colouringcode-passenger 0.1
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.
- data/DEVELOPERS.TXT +101 -0
- data/INSTALL +6 -0
- data/LICENSE +19 -0
- data/NEWS +174 -0
- data/README +59 -0
- data/Rakefile +921 -0
- data/benchmark/ApplicationPool.cpp +52 -0
- data/benchmark/accept_vs_socketpair_vs_named_pipes.rb +126 -0
- data/benchmark/dispatcher.rb +42 -0
- data/benchmark/overhead_of_password_checking.rb +81 -0
- data/benchmark/socket_connections_vs_persistent_pipe.rb +99 -0
- data/benchmark/unix_sockets_vs_pipes.rb +83 -0
- data/bin/passenger-config +46 -0
- data/bin/passenger-install-apache2-module +223 -0
- data/bin/passenger-install-nginx-module +472 -0
- data/bin/passenger-make-enterprisey +83 -0
- data/bin/passenger-memory-stats +301 -0
- data/bin/passenger-spawn-server +68 -0
- data/bin/passenger-status +125 -0
- data/bin/passenger-stress-test +344 -0
- data/debian/compat +1 -0
- data/debian/control +21 -0
- data/debian/postinst +24 -0
- data/debian/prerm +2 -0
- data/doc/ApplicationPool algorithm.txt +402 -0
- data/doc/Architectural overview.html +1 -0
- data/doc/Architectural overview.txt +334 -0
- data/doc/Doxyfile +241 -0
- data/doc/Security of user switching support.html +1 -0
- data/doc/Security of user switching support.txt +197 -0
- data/doc/Users guide Apache.html +1 -0
- data/doc/Users guide Apache.txt +1848 -0
- data/doc/Users guide Nginx.html +1 -0
- data/doc/Users guide Nginx.txt +769 -0
- data/doc/definitions.h +5 -0
- data/doc/images/by_sa.png +0 -0
- data/doc/images/conservative_spawning.png +0 -0
- data/doc/images/conservative_spawning.svg +248 -0
- data/doc/images/icons/README +5 -0
- data/doc/images/icons/callouts/1.png +0 -0
- data/doc/images/icons/callouts/10.png +0 -0
- data/doc/images/icons/callouts/11.png +0 -0
- data/doc/images/icons/callouts/12.png +0 -0
- data/doc/images/icons/callouts/13.png +0 -0
- data/doc/images/icons/callouts/14.png +0 -0
- data/doc/images/icons/callouts/15.png +0 -0
- data/doc/images/icons/callouts/2.png +0 -0
- data/doc/images/icons/callouts/3.png +0 -0
- data/doc/images/icons/callouts/4.png +0 -0
- data/doc/images/icons/callouts/5.png +0 -0
- data/doc/images/icons/callouts/6.png +0 -0
- data/doc/images/icons/callouts/7.png +0 -0
- data/doc/images/icons/callouts/8.png +0 -0
- data/doc/images/icons/callouts/9.png +0 -0
- data/doc/images/icons/caution.png +0 -0
- data/doc/images/icons/example.png +0 -0
- data/doc/images/icons/home.png +0 -0
- data/doc/images/icons/important.png +0 -0
- data/doc/images/icons/next.png +0 -0
- data/doc/images/icons/note.png +0 -0
- data/doc/images/icons/prev.png +0 -0
- data/doc/images/icons/tip.png +0 -0
- data/doc/images/icons/up.png +0 -0
- data/doc/images/icons/warning.png +0 -0
- data/doc/images/passenger_architecture.png +0 -0
- data/doc/images/passenger_architecture.svg +401 -0
- data/doc/images/phusion_banner.png +0 -0
- data/doc/images/smart-lv2.png +0 -0
- data/doc/images/smart-lv2.svg +320 -0
- data/doc/images/spawn_server_architecture.png +0 -0
- data/doc/images/spawn_server_architecture.svg +655 -0
- data/doc/images/typical_isolated_web_application.png +0 -0
- data/doc/images/typical_isolated_web_application.svg +213 -0
- data/doc/rdoc/classes/ConditionVariable.html +194 -0
- data/doc/rdoc/classes/Exception.html +120 -0
- data/doc/rdoc/classes/GC.html +113 -0
- data/doc/rdoc/classes/IO.html +169 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractInstaller.html +153 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractRequestHandler.html +517 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer/ServerAlreadyStarted.html +97 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer/ServerError.html +96 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer/ServerNotStarted.html +97 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer/UnknownMessage.html +96 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer.html +719 -0
- data/doc/rdoc/classes/PhusionPassenger/AbstractServerCollection.html +598 -0
- data/doc/rdoc/classes/PhusionPassenger/AdminTools/ControlProcess/Instance.html +138 -0
- data/doc/rdoc/classes/PhusionPassenger/AdminTools/ControlProcess.html +317 -0
- data/doc/rdoc/classes/PhusionPassenger/AdminTools.html +140 -0
- data/doc/rdoc/classes/PhusionPassenger/AppInitError.html +154 -0
- data/doc/rdoc/classes/PhusionPassenger/Application.html +283 -0
- data/doc/rdoc/classes/PhusionPassenger/ConsoleTextTemplate.html +172 -0
- data/doc/rdoc/classes/PhusionPassenger/FrameworkInitError.html +145 -0
- data/doc/rdoc/classes/PhusionPassenger/HTMLTemplate.html +181 -0
- data/doc/rdoc/classes/PhusionPassenger/InitializationError.html +141 -0
- data/doc/rdoc/classes/PhusionPassenger/InvalidPath.html +92 -0
- data/doc/rdoc/classes/PhusionPassenger/MessageChannel.html +489 -0
- data/doc/rdoc/classes/PhusionPassenger/NativeSupport.html +350 -0
- data/doc/rdoc/classes/PhusionPassenger/Rack/ApplicationSpawner.html +188 -0
- data/doc/rdoc/classes/PhusionPassenger/Rack/RequestHandler.html +199 -0
- data/doc/rdoc/classes/PhusionPassenger/Rack.html +91 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner/Error.html +98 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner.html +438 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/CGIFixed.html +200 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner/Error.html +98 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner.html +436 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz/RequestHandler.html +155 -0
- data/doc/rdoc/classes/PhusionPassenger/Railz.html +95 -0
- data/doc/rdoc/classes/PhusionPassenger/SpawnManager.html +402 -0
- data/doc/rdoc/classes/PhusionPassenger/UnknownError.html +125 -0
- data/doc/rdoc/classes/PhusionPassenger/Utils/PseudoIO.html +169 -0
- data/doc/rdoc/classes/PhusionPassenger/Utils.html +803 -0
- data/doc/rdoc/classes/PhusionPassenger/VersionNotFound.html +140 -0
- data/doc/rdoc/classes/PhusionPassenger/WSGI/ApplicationSpawner.html +188 -0
- data/doc/rdoc/classes/PhusionPassenger/WSGI.html +89 -0
- data/doc/rdoc/classes/PhusionPassenger.html +238 -0
- data/doc/rdoc/classes/PlatformInfo.html +866 -0
- data/doc/rdoc/classes/RakeExtensions.html +197 -0
- data/doc/rdoc/classes/Signal.html +131 -0
- data/doc/rdoc/created.rid +1 -0
- data/doc/rdoc/files/DEVELOPERS_TXT.html +255 -0
- data/doc/rdoc/files/README.html +175 -0
- data/doc/rdoc/files/ext/phusion_passenger/native_support_c.html +92 -0
- data/doc/rdoc/files/lib/phusion_passenger/abstract_installer_rb.html +129 -0
- data/doc/rdoc/files/lib/phusion_passenger/abstract_request_handler_rb.html +129 -0
- data/doc/rdoc/files/lib/phusion_passenger/abstract_server_collection_rb.html +126 -0
- data/doc/rdoc/files/lib/phusion_passenger/abstract_server_rb.html +128 -0
- data/doc/rdoc/files/lib/phusion_passenger/admin_tools/control_process_rb.html +130 -0
- data/doc/rdoc/files/lib/phusion_passenger/admin_tools_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/application_rb.html +127 -0
- data/doc/rdoc/files/lib/phusion_passenger/console_text_template_rb.html +126 -0
- data/doc/rdoc/files/lib/phusion_passenger/constants_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/dependencies_rb.html +134 -0
- data/doc/rdoc/files/lib/phusion_passenger/events_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/exceptions_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/html_template_rb.html +126 -0
- data/doc/rdoc/files/lib/phusion_passenger/message_channel_rb.html +120 -0
- data/doc/rdoc/files/lib/phusion_passenger/packaging_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/platform_info_rb.html +127 -0
- data/doc/rdoc/files/lib/phusion_passenger/rack/application_spawner_rb.html +133 -0
- data/doc/rdoc/files/lib/phusion_passenger/rack/request_handler_rb.html +125 -0
- data/doc/rdoc/files/lib/phusion_passenger/railz/application_spawner_rb.html +140 -0
- data/doc/rdoc/files/lib/phusion_passenger/railz/cgi_fixed_rb.html +126 -0
- data/doc/rdoc/files/lib/phusion_passenger/railz/framework_spawner_rb.html +145 -0
- data/doc/rdoc/files/lib/phusion_passenger/railz/request_handler_rb.html +125 -0
- data/doc/rdoc/files/lib/phusion_passenger/simple_benchmarking_rb.html +122 -0
- data/doc/rdoc/files/lib/phusion_passenger/spawn_manager_rb.html +159 -0
- data/doc/rdoc/files/lib/phusion_passenger/utils_rb.html +174 -0
- data/doc/rdoc/files/lib/phusion_passenger/wsgi/application_spawner_rb.html +129 -0
- data/doc/rdoc/files/misc/rake/extensions_rb.html +130 -0
- data/doc/rdoc/fr_class_index.html +91 -0
- data/doc/rdoc/fr_file_index.html +76 -0
- data/doc/rdoc/fr_method_index.html +205 -0
- data/doc/rdoc/index.html +26 -0
- data/doc/rdoc/rdoc-style.css +187 -0
- data/doc/template/horo.rb +613 -0
- data/doc/users_guide_snippets/analysis_and_system_maintenance_tools.txt +144 -0
- data/doc/users_guide_snippets/appendix_a_about.txt +13 -0
- data/doc/users_guide_snippets/appendix_b_terminology.txt +63 -0
- data/doc/users_guide_snippets/appendix_c_spawning_methods.txt +304 -0
- data/doc/users_guide_snippets/global_queueing_explained.txt +78 -0
- data/doc/users_guide_snippets/rackup_specifications.txt +71 -0
- data/doc/users_guide_snippets/rails_spawn_method.txt +48 -0
- data/doc/users_guide_snippets/tips.txt +173 -0
- data/ext/apache2/Bucket.cpp +190 -0
- data/ext/apache2/Bucket.h +87 -0
- data/ext/apache2/Configuration.cpp +798 -0
- data/ext/apache2/Configuration.h +405 -0
- data/ext/apache2/DirectoryMapper.h +296 -0
- data/ext/apache2/Hooks.cpp +1615 -0
- data/ext/apache2/Hooks.h +45 -0
- data/ext/apache2/LICENSE-CNRI.TXT +79 -0
- data/ext/apache2/mod_passenger.c +38 -0
- data/ext/boost/LICENSE.TXT +23 -0
- data/ext/boost/VERSION.TXT +1 -0
- data/ext/boost/algorithm/string/case_conv.hpp +176 -0
- data/ext/boost/algorithm/string/compare.hpp +199 -0
- data/ext/boost/algorithm/string/concept.hpp +83 -0
- data/ext/boost/algorithm/string/config.hpp +28 -0
- data/ext/boost/algorithm/string/constants.hpp +36 -0
- data/ext/boost/algorithm/string/detail/case_conv.hpp +112 -0
- data/ext/boost/algorithm/string/detail/find_format.hpp +193 -0
- data/ext/boost/algorithm/string/detail/find_format_all.hpp +263 -0
- data/ext/boost/algorithm/string/detail/find_format_store.hpp +71 -0
- data/ext/boost/algorithm/string/detail/finder.hpp +646 -0
- data/ext/boost/algorithm/string/detail/formatter.hpp +94 -0
- data/ext/boost/algorithm/string/detail/replace_storage.hpp +159 -0
- data/ext/boost/algorithm/string/detail/sequence.hpp +200 -0
- data/ext/boost/algorithm/string/detail/util.hpp +106 -0
- data/ext/boost/algorithm/string/erase.hpp +844 -0
- data/ext/boost/algorithm/string/find_format.hpp +269 -0
- data/ext/boost/algorithm/string/finder.hpp +270 -0
- data/ext/boost/algorithm/string/formatter.hpp +103 -0
- data/ext/boost/algorithm/string/replace.hpp +928 -0
- data/ext/boost/algorithm/string/sequence_traits.hpp +193 -0
- data/ext/boost/algorithm/string/yes_no_type.hpp +33 -0
- data/ext/boost/assert.hpp +50 -0
- data/ext/boost/bind/arg.hpp +62 -0
- data/ext/boost/bind/bind_cc.hpp +117 -0
- data/ext/boost/bind/bind_mf_cc.hpp +227 -0
- data/ext/boost/bind/bind_template.hpp +345 -0
- data/ext/boost/bind/mem_fn_cc.hpp +103 -0
- data/ext/boost/bind/mem_fn_template.hpp +1020 -0
- data/ext/boost/bind/placeholders.hpp +68 -0
- data/ext/boost/bind/storage.hpp +475 -0
- data/ext/boost/bind.hpp +1689 -0
- data/ext/boost/call_traits.hpp +24 -0
- data/ext/boost/checked_delete.hpp +69 -0
- data/ext/boost/concept/assert.hpp +46 -0
- data/ext/boost/concept/detail/concept_def.hpp +51 -0
- data/ext/boost/concept/detail/concept_undef.hpp +5 -0
- data/ext/boost/concept/detail/general.hpp +66 -0
- data/ext/boost/concept/detail/has_constraints.hpp +48 -0
- data/ext/boost/concept/usage.hpp +43 -0
- data/ext/boost/concept_check.hpp +988 -0
- data/ext/boost/config/abi/borland_prefix.hpp +27 -0
- data/ext/boost/config/abi/borland_suffix.hpp +12 -0
- data/ext/boost/config/abi/msvc_prefix.hpp +8 -0
- data/ext/boost/config/abi/msvc_suffix.hpp +8 -0
- data/ext/boost/config/abi_prefix.hpp +25 -0
- data/ext/boost/config/abi_suffix.hpp +26 -0
- data/ext/boost/config/auto_link.hpp +368 -0
- data/ext/boost/config/compiler/borland.hpp +209 -0
- data/ext/boost/config/compiler/comeau.hpp +59 -0
- data/ext/boost/config/compiler/common_edg.hpp +62 -0
- data/ext/boost/config/compiler/compaq_cxx.hpp +19 -0
- data/ext/boost/config/compiler/digitalmars.hpp +67 -0
- data/ext/boost/config/compiler/gcc.hpp +149 -0
- data/ext/boost/config/compiler/gcc_xml.hpp +30 -0
- data/ext/boost/config/compiler/greenhills.hpp +28 -0
- data/ext/boost/config/compiler/hp_acc.hpp +95 -0
- data/ext/boost/config/compiler/intel.hpp +162 -0
- data/ext/boost/config/compiler/kai.hpp +35 -0
- data/ext/boost/config/compiler/metrowerks.hpp +111 -0
- data/ext/boost/config/compiler/mpw.hpp +51 -0
- data/ext/boost/config/compiler/pgi.hpp +25 -0
- data/ext/boost/config/compiler/sgi_mipspro.hpp +28 -0
- data/ext/boost/config/compiler/sunpro_cc.hpp +98 -0
- data/ext/boost/config/compiler/vacpp.hpp +60 -0
- data/ext/boost/config/compiler/visualc.hpp +191 -0
- data/ext/boost/config/no_tr1/complex.hpp +28 -0
- data/ext/boost/config/no_tr1/functional.hpp +28 -0
- data/ext/boost/config/no_tr1/memory.hpp +28 -0
- data/ext/boost/config/no_tr1/utility.hpp +28 -0
- data/ext/boost/config/platform/aix.hpp +33 -0
- data/ext/boost/config/platform/amigaos.hpp +15 -0
- data/ext/boost/config/platform/beos.hpp +26 -0
- data/ext/boost/config/platform/bsd.hpp +73 -0
- data/ext/boost/config/platform/cygwin.hpp +51 -0
- data/ext/boost/config/platform/hpux.hpp +84 -0
- data/ext/boost/config/platform/irix.hpp +31 -0
- data/ext/boost/config/platform/linux.hpp +98 -0
- data/ext/boost/config/platform/macos.hpp +78 -0
- data/ext/boost/config/platform/qnxnto.hpp +31 -0
- data/ext/boost/config/platform/solaris.hpp +21 -0
- data/ext/boost/config/platform/win32.hpp +58 -0
- data/ext/boost/config/posix_features.hpp +95 -0
- data/ext/boost/config/requires_threads.hpp +92 -0
- data/ext/boost/config/select_compiler_config.hpp +115 -0
- data/ext/boost/config/select_platform_config.hpp +90 -0
- data/ext/boost/config/select_stdlib_config.hpp +68 -0
- data/ext/boost/config/stdlib/dinkumware.hpp +106 -0
- data/ext/boost/config/stdlib/libcomo.hpp +46 -0
- data/ext/boost/config/stdlib/libstdcpp3.hpp +73 -0
- data/ext/boost/config/stdlib/modena.hpp +30 -0
- data/ext/boost/config/stdlib/msl.hpp +59 -0
- data/ext/boost/config/stdlib/roguewave.hpp +153 -0
- data/ext/boost/config/stdlib/sgi.hpp +111 -0
- data/ext/boost/config/stdlib/stlport.hpp +201 -0
- data/ext/boost/config/stdlib/vacpp.hpp +18 -0
- data/ext/boost/config/suffix.hpp +566 -0
- data/ext/boost/config/user.hpp +124 -0
- data/ext/boost/config.hpp +70 -0
- data/ext/boost/cstdint.hpp +449 -0
- data/ext/boost/current_function.hpp +67 -0
- data/ext/boost/date_time/adjust_functors.hpp +178 -0
- data/ext/boost/date_time/c_time.hpp +91 -0
- data/ext/boost/date_time/compiler_config.hpp +149 -0
- data/ext/boost/date_time/constrained_value.hpp +98 -0
- data/ext/boost/date_time/date.hpp +197 -0
- data/ext/boost/date_time/date_clock_device.hpp +77 -0
- data/ext/boost/date_time/date_defs.hpp +26 -0
- data/ext/boost/date_time/date_duration.hpp +147 -0
- data/ext/boost/date_time/date_duration_types.hpp +269 -0
- data/ext/boost/date_time/date_facet.hpp +775 -0
- data/ext/boost/date_time/date_format_simple.hpp +159 -0
- data/ext/boost/date_time/date_formatting.hpp +127 -0
- data/ext/boost/date_time/date_formatting_limited.hpp +121 -0
- data/ext/boost/date_time/date_formatting_locales.hpp +233 -0
- data/ext/boost/date_time/date_generator_formatter.hpp +263 -0
- data/ext/boost/date_time/date_generator_parser.hpp +329 -0
- data/ext/boost/date_time/date_generators.hpp +509 -0
- data/ext/boost/date_time/date_iterator.hpp +101 -0
- data/ext/boost/date_time/date_names_put.hpp +320 -0
- data/ext/boost/date_time/date_parsing.hpp +299 -0
- data/ext/boost/date_time/dst_rules.hpp +391 -0
- data/ext/boost/date_time/filetime_functions.hpp +78 -0
- data/ext/boost/date_time/format_date_parser.hpp +731 -0
- data/ext/boost/date_time/gregorian/conversion.hpp +73 -0
- data/ext/boost/date_time/gregorian/formatters.hpp +162 -0
- data/ext/boost/date_time/gregorian/formatters_limited.hpp +81 -0
- data/ext/boost/date_time/gregorian/greg_calendar.hpp +47 -0
- data/ext/boost/date_time/gregorian/greg_date.hpp +135 -0
- data/ext/boost/date_time/gregorian/greg_day.hpp +57 -0
- data/ext/boost/date_time/gregorian/greg_day_of_year.hpp +38 -0
- data/ext/boost/date_time/gregorian/greg_duration.hpp +38 -0
- data/ext/boost/date_time/gregorian/greg_duration_types.hpp +34 -0
- data/ext/boost/date_time/gregorian/greg_month.hpp +105 -0
- data/ext/boost/date_time/gregorian/greg_weekday.hpp +66 -0
- data/ext/boost/date_time/gregorian/greg_year.hpp +53 -0
- data/ext/boost/date_time/gregorian/greg_ymd.hpp +33 -0
- data/ext/boost/date_time/gregorian/gregorian.hpp +38 -0
- data/ext/boost/date_time/gregorian/gregorian_io.hpp +777 -0
- data/ext/boost/date_time/gregorian/gregorian_types.hpp +109 -0
- data/ext/boost/date_time/gregorian/parsers.hpp +91 -0
- data/ext/boost/date_time/gregorian_calendar.hpp +70 -0
- data/ext/boost/date_time/gregorian_calendar.ipp +219 -0
- data/ext/boost/date_time/int_adapter.hpp +507 -0
- data/ext/boost/date_time/iso_format.hpp +303 -0
- data/ext/boost/date_time/locale_config.hpp +31 -0
- data/ext/boost/date_time/microsec_time_clock.hpp +205 -0
- data/ext/boost/date_time/parse_format_base.hpp +29 -0
- data/ext/boost/date_time/period.hpp +377 -0
- data/ext/boost/date_time/period_formatter.hpp +196 -0
- data/ext/boost/date_time/period_parser.hpp +196 -0
- data/ext/boost/date_time/posix_time/conversion.hpp +93 -0
- data/ext/boost/date_time/posix_time/date_duration_operators.hpp +114 -0
- data/ext/boost/date_time/posix_time/posix_time.hpp +39 -0
- data/ext/boost/date_time/posix_time/posix_time_config.hpp +178 -0
- data/ext/boost/date_time/posix_time/posix_time_duration.hpp +82 -0
- data/ext/boost/date_time/posix_time/posix_time_io.hpp +246 -0
- data/ext/boost/date_time/posix_time/posix_time_system.hpp +68 -0
- data/ext/boost/date_time/posix_time/posix_time_types.hpp +55 -0
- data/ext/boost/date_time/posix_time/ptime.hpp +65 -0
- data/ext/boost/date_time/posix_time/time_formatters.hpp +289 -0
- data/ext/boost/date_time/posix_time/time_parsers.hpp +44 -0
- data/ext/boost/date_time/posix_time/time_period.hpp +29 -0
- data/ext/boost/date_time/special_defs.hpp +25 -0
- data/ext/boost/date_time/special_values_formatter.hpp +96 -0
- data/ext/boost/date_time/special_values_parser.hpp +159 -0
- data/ext/boost/date_time/string_convert.hpp +33 -0
- data/ext/boost/date_time/string_parse_tree.hpp +278 -0
- data/ext/boost/date_time/strings_from_facet.hpp +123 -0
- data/ext/boost/date_time/time.hpp +190 -0
- data/ext/boost/date_time/time_clock.hpp +83 -0
- data/ext/boost/date_time/time_defs.hpp +33 -0
- data/ext/boost/date_time/time_duration.hpp +281 -0
- data/ext/boost/date_time/time_facet.hpp +1263 -0
- data/ext/boost/date_time/time_formatting_streams.hpp +119 -0
- data/ext/boost/date_time/time_iterator.hpp +52 -0
- data/ext/boost/date_time/time_parsing.hpp +321 -0
- data/ext/boost/date_time/time_resolution_traits.hpp +140 -0
- data/ext/boost/date_time/time_system_counted.hpp +254 -0
- data/ext/boost/date_time/time_system_split.hpp +213 -0
- data/ext/boost/date_time/wrapping_int.hpp +163 -0
- data/ext/boost/date_time/year_month_day.hpp +45 -0
- data/ext/boost/detail/atomic_count.hpp +124 -0
- data/ext/boost/detail/atomic_count_gcc.hpp +68 -0
- data/ext/boost/detail/atomic_count_gcc_x86.hpp +84 -0
- data/ext/boost/detail/atomic_count_pthreads.hpp +96 -0
- data/ext/boost/detail/atomic_count_solaris.hpp +59 -0
- data/ext/boost/detail/atomic_count_sync.hpp +57 -0
- data/ext/boost/detail/atomic_count_win32.hpp +63 -0
- data/ext/boost/detail/bad_weak_ptr.hpp +59 -0
- data/ext/boost/detail/call_traits.hpp +164 -0
- data/ext/boost/detail/endian.hpp +73 -0
- data/ext/boost/detail/indirect_traits.hpp +487 -0
- data/ext/boost/detail/iterator.hpp +494 -0
- data/ext/boost/detail/lcast_precision.hpp +184 -0
- data/ext/boost/detail/limits.hpp +449 -0
- data/ext/boost/detail/reference_content.hpp +141 -0
- data/ext/boost/detail/shared_count.hpp +375 -0
- data/ext/boost/detail/sp_counted_base.hpp +81 -0
- data/ext/boost/detail/sp_counted_base_acc_ia64.hpp +150 -0
- data/ext/boost/detail/sp_counted_base_cw_ppc.hpp +170 -0
- data/ext/boost/detail/sp_counted_base_cw_x86.hpp +158 -0
- data/ext/boost/detail/sp_counted_base_gcc_ia64.hpp +157 -0
- data/ext/boost/detail/sp_counted_base_gcc_ppc.hpp +181 -0
- data/ext/boost/detail/sp_counted_base_gcc_sparc.hpp +166 -0
- data/ext/boost/detail/sp_counted_base_gcc_x86.hpp +173 -0
- data/ext/boost/detail/sp_counted_base_nt.hpp +107 -0
- data/ext/boost/detail/sp_counted_base_pt.hpp +135 -0
- data/ext/boost/detail/sp_counted_base_solaris.hpp +113 -0
- data/ext/boost/detail/sp_counted_base_sync.hpp +151 -0
- data/ext/boost/detail/sp_counted_base_w32.hpp +130 -0
- data/ext/boost/detail/sp_counted_impl.hpp +231 -0
- data/ext/boost/detail/sp_typeinfo.hpp +83 -0
- data/ext/boost/detail/workaround.hpp +202 -0
- data/ext/boost/enable_shared_from_this.hpp +73 -0
- data/ext/boost/function/detail/function_iterate.hpp +16 -0
- data/ext/boost/function/detail/maybe_include.hpp +267 -0
- data/ext/boost/function/detail/prologue.hpp +25 -0
- data/ext/boost/function/function_base.hpp +762 -0
- data/ext/boost/function/function_template.hpp +969 -0
- data/ext/boost/function.hpp +66 -0
- data/ext/boost/function_equal.hpp +28 -0
- data/ext/boost/get_pointer.hpp +29 -0
- data/ext/boost/implicit_cast.hpp +29 -0
- data/ext/boost/integer_traits.hpp +236 -0
- data/ext/boost/io/ios_state.hpp +431 -0
- data/ext/boost/io_fwd.hpp +67 -0
- data/ext/boost/is_placeholder.hpp +31 -0
- data/ext/boost/iterator/detail/config_def.hpp +135 -0
- data/ext/boost/iterator/detail/config_undef.hpp +25 -0
- data/ext/boost/iterator/detail/enable_if.hpp +86 -0
- data/ext/boost/iterator/detail/facade_iterator_category.hpp +200 -0
- data/ext/boost/iterator/detail/minimum_category.hpp +116 -0
- data/ext/boost/iterator/interoperable.hpp +50 -0
- data/ext/boost/iterator/iterator_adaptor.hpp +366 -0
- data/ext/boost/iterator/iterator_categories.hpp +188 -0
- data/ext/boost/iterator/iterator_facade.hpp +879 -0
- data/ext/boost/iterator/iterator_traits.hpp +92 -0
- data/ext/boost/iterator/reverse_iterator.hpp +69 -0
- data/ext/boost/iterator/transform_iterator.hpp +188 -0
- data/ext/boost/iterator.hpp +59 -0
- data/ext/boost/lexical_cast.hpp +1205 -0
- data/ext/boost/limits.hpp +146 -0
- data/ext/boost/mem_fn.hpp +389 -0
- data/ext/boost/mpl/always.hpp +39 -0
- data/ext/boost/mpl/and.hpp +60 -0
- data/ext/boost/mpl/apply.hpp +229 -0
- data/ext/boost/mpl/apply_fwd.hpp +107 -0
- data/ext/boost/mpl/apply_wrap.hpp +203 -0
- data/ext/boost/mpl/arg.hpp +131 -0
- data/ext/boost/mpl/arg_fwd.hpp +28 -0
- data/ext/boost/mpl/assert.hpp +370 -0
- data/ext/boost/mpl/aux_/adl_barrier.hpp +48 -0
- data/ext/boost/mpl/aux_/arg_typedef.hpp +31 -0
- data/ext/boost/mpl/aux_/arity.hpp +39 -0
- data/ext/boost/mpl/aux_/arity_spec.hpp +67 -0
- data/ext/boost/mpl/aux_/common_name_wknd.hpp +34 -0
- data/ext/boost/mpl/aux_/config/adl.hpp +40 -0
- data/ext/boost/mpl/aux_/config/arrays.hpp +30 -0
- data/ext/boost/mpl/aux_/config/bind.hpp +33 -0
- data/ext/boost/mpl/aux_/config/compiler.hpp +64 -0
- data/ext/boost/mpl/aux_/config/ctps.hpp +30 -0
- data/ext/boost/mpl/aux_/config/dtp.hpp +46 -0
- data/ext/boost/mpl/aux_/config/eti.hpp +47 -0
- data/ext/boost/mpl/aux_/config/gcc.hpp +23 -0
- data/ext/boost/mpl/aux_/config/has_apply.hpp +32 -0
- data/ext/boost/mpl/aux_/config/has_xxx.hpp +33 -0
- data/ext/boost/mpl/aux_/config/integral.hpp +38 -0
- data/ext/boost/mpl/aux_/config/intel.hpp +21 -0
- data/ext/boost/mpl/aux_/config/lambda.hpp +32 -0
- data/ext/boost/mpl/aux_/config/msvc.hpp +21 -0
- data/ext/boost/mpl/aux_/config/msvc_typename.hpp +26 -0
- data/ext/boost/mpl/aux_/config/nttp.hpp +41 -0
- data/ext/boost/mpl/aux_/config/overload_resolution.hpp +29 -0
- data/ext/boost/mpl/aux_/config/pp_counter.hpp +26 -0
- data/ext/boost/mpl/aux_/config/preprocessor.hpp +39 -0
- data/ext/boost/mpl/aux_/config/static_constant.hpp +25 -0
- data/ext/boost/mpl/aux_/config/ttp.hpp +41 -0
- data/ext/boost/mpl/aux_/config/use_preprocessed.hpp +19 -0
- data/ext/boost/mpl/aux_/config/workaround.hpp +19 -0
- data/ext/boost/mpl/aux_/full_lambda.hpp +354 -0
- data/ext/boost/mpl/aux_/has_apply.hpp +32 -0
- data/ext/boost/mpl/aux_/has_type.hpp +23 -0
- data/ext/boost/mpl/aux_/include_preprocessed.hpp +42 -0
- data/ext/boost/mpl/aux_/integral_wrapper.hpp +93 -0
- data/ext/boost/mpl/aux_/lambda_arity_param.hpp +25 -0
- data/ext/boost/mpl/aux_/lambda_support.hpp +169 -0
- data/ext/boost/mpl/aux_/msvc_never_true.hpp +34 -0
- data/ext/boost/mpl/aux_/na.hpp +95 -0
- data/ext/boost/mpl/aux_/na_assert.hpp +34 -0
- data/ext/boost/mpl/aux_/na_fwd.hpp +31 -0
- data/ext/boost/mpl/aux_/na_spec.hpp +175 -0
- data/ext/boost/mpl/aux_/nested_type_wknd.hpp +48 -0
- data/ext/boost/mpl/aux_/nttp_decl.hpp +35 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp +84 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/bind.hpp +561 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/bind_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp +558 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/quote.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessor/def_params_tail.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessor/enum.hpp +62 -0
- data/ext/boost/mpl/aux_/preprocessor/filter_params.hpp +28 -0
- data/ext/boost/mpl/aux_/preprocessor/params.hpp +65 -0
- data/ext/boost/mpl/aux_/preprocessor/sub.hpp +65 -0
- data/ext/boost/mpl/aux_/static_cast.hpp +27 -0
- data/ext/boost/mpl/aux_/template_arity.hpp +189 -0
- data/ext/boost/mpl/aux_/template_arity_fwd.hpp +23 -0
- data/ext/boost/mpl/aux_/type_wrapper.hpp +47 -0
- data/ext/boost/mpl/aux_/value_wknd.hpp +89 -0
- data/ext/boost/mpl/aux_/yes_no.hpp +58 -0
- data/ext/boost/mpl/bind.hpp +551 -0
- data/ext/boost/mpl/bind_fwd.hpp +99 -0
- data/ext/boost/mpl/bool.hpp +39 -0
- data/ext/boost/mpl/bool_fwd.hpp +33 -0
- data/ext/boost/mpl/eval_if.hpp +71 -0
- data/ext/boost/mpl/has_xxx.hpp +272 -0
- data/ext/boost/mpl/identity.hpp +45 -0
- data/ext/boost/mpl/if.hpp +135 -0
- data/ext/boost/mpl/int.hpp +22 -0
- data/ext/boost/mpl/int_fwd.hpp +27 -0
- data/ext/boost/mpl/integral_c.hpp +51 -0
- data/ext/boost/mpl/integral_c_fwd.hpp +32 -0
- data/ext/boost/mpl/integral_c_tag.hpp +26 -0
- data/ext/boost/mpl/lambda.hpp +29 -0
- data/ext/boost/mpl/lambda_fwd.hpp +57 -0
- data/ext/boost/mpl/limits/arity.hpp +21 -0
- data/ext/boost/mpl/logical.hpp +21 -0
- data/ext/boost/mpl/next.hpp +19 -0
- data/ext/boost/mpl/next_prior.hpp +49 -0
- data/ext/boost/mpl/not.hpp +51 -0
- data/ext/boost/mpl/or.hpp +61 -0
- data/ext/boost/mpl/placeholders.hpp +100 -0
- data/ext/boost/mpl/protect.hpp +55 -0
- data/ext/boost/mpl/quote.hpp +140 -0
- data/ext/boost/mpl/size_t.hpp +25 -0
- data/ext/boost/mpl/size_t_fwd.hpp +28 -0
- data/ext/boost/mpl/void.hpp +76 -0
- data/ext/boost/mpl/void_fwd.hpp +26 -0
- data/ext/boost/next_prior.hpp +51 -0
- data/ext/boost/non_type.hpp +27 -0
- data/ext/boost/noncopyable.hpp +36 -0
- data/ext/boost/none.hpp +28 -0
- data/ext/boost/none_t.hpp +24 -0
- data/ext/boost/operators.hpp +943 -0
- data/ext/boost/optional/optional.hpp +922 -0
- data/ext/boost/optional/optional_fwd.hpp +22 -0
- data/ext/boost/optional.hpp +18 -0
- data/ext/boost/preprocessor/arithmetic/add.hpp +51 -0
- data/ext/boost/preprocessor/arithmetic/dec.hpp +288 -0
- data/ext/boost/preprocessor/arithmetic/inc.hpp +288 -0
- data/ext/boost/preprocessor/arithmetic/sub.hpp +50 -0
- data/ext/boost/preprocessor/array/data.hpp +28 -0
- data/ext/boost/preprocessor/array/elem.hpp +29 -0
- data/ext/boost/preprocessor/array/size.hpp +28 -0
- data/ext/boost/preprocessor/cat.hpp +35 -0
- data/ext/boost/preprocessor/comma_if.hpp +17 -0
- data/ext/boost/preprocessor/config/config.hpp +70 -0
- data/ext/boost/preprocessor/control/detail/while.hpp +536 -0
- data/ext/boost/preprocessor/control/expr_iif.hpp +31 -0
- data/ext/boost/preprocessor/control/if.hpp +30 -0
- data/ext/boost/preprocessor/control/iif.hpp +34 -0
- data/ext/boost/preprocessor/control/while.hpp +312 -0
- data/ext/boost/preprocessor/debug/error.hpp +33 -0
- data/ext/boost/preprocessor/detail/auto_rec.hpp +293 -0
- data/ext/boost/preprocessor/detail/check.hpp +48 -0
- data/ext/boost/preprocessor/detail/is_binary.hpp +30 -0
- data/ext/boost/preprocessor/empty.hpp +17 -0
- data/ext/boost/preprocessor/enum.hpp +17 -0
- data/ext/boost/preprocessor/enum_params.hpp +17 -0
- data/ext/boost/preprocessor/facilities/empty.hpp +21 -0
- data/ext/boost/preprocessor/facilities/identity.hpp +23 -0
- data/ext/boost/preprocessor/identity.hpp +17 -0
- data/ext/boost/preprocessor/inc.hpp +17 -0
- data/ext/boost/preprocessor/iterate.hpp +17 -0
- data/ext/boost/preprocessor/iteration/detail/bounds/lower1.hpp +99 -0
- data/ext/boost/preprocessor/iteration/detail/bounds/upper1.hpp +99 -0
- data/ext/boost/preprocessor/iteration/detail/iter/forward1.hpp +1342 -0
- data/ext/boost/preprocessor/iteration/iterate.hpp +82 -0
- data/ext/boost/preprocessor/list/adt.hpp +73 -0
- data/ext/boost/preprocessor/list/append.hpp +40 -0
- data/ext/boost/preprocessor/list/detail/fold_left.hpp +279 -0
- data/ext/boost/preprocessor/list/detail/fold_right.hpp +277 -0
- data/ext/boost/preprocessor/list/fold_left.hpp +303 -0
- data/ext/boost/preprocessor/list/fold_right.hpp +40 -0
- data/ext/boost/preprocessor/list/for_each_i.hpp +65 -0
- data/ext/boost/preprocessor/list/reverse.hpp +40 -0
- data/ext/boost/preprocessor/list/transform.hpp +49 -0
- data/ext/boost/preprocessor/logical/and.hpp +30 -0
- data/ext/boost/preprocessor/logical/bitand.hpp +38 -0
- data/ext/boost/preprocessor/logical/bool.hpp +288 -0
- data/ext/boost/preprocessor/logical/compl.hpp +36 -0
- data/ext/boost/preprocessor/punctuation/comma.hpp +21 -0
- data/ext/boost/preprocessor/punctuation/comma_if.hpp +31 -0
- data/ext/boost/preprocessor/repeat.hpp +17 -0
- data/ext/boost/preprocessor/repetition/detail/for.hpp +536 -0
- data/ext/boost/preprocessor/repetition/enum.hpp +66 -0
- data/ext/boost/preprocessor/repetition/enum_binary_params.hpp +54 -0
- data/ext/boost/preprocessor/repetition/enum_params.hpp +41 -0
- data/ext/boost/preprocessor/repetition/for.hpp +306 -0
- data/ext/boost/preprocessor/repetition/repeat.hpp +825 -0
- data/ext/boost/preprocessor/repetition/repeat_from_to.hpp +87 -0
- data/ext/boost/preprocessor/seq/elem.hpp +304 -0
- data/ext/boost/preprocessor/seq/enum.hpp +288 -0
- data/ext/boost/preprocessor/seq/for_each_i.hpp +61 -0
- data/ext/boost/preprocessor/seq/seq.hpp +44 -0
- data/ext/boost/preprocessor/seq/size.hpp +548 -0
- data/ext/boost/preprocessor/slot/detail/def.hpp +49 -0
- data/ext/boost/preprocessor/slot/detail/shared.hpp +247 -0
- data/ext/boost/preprocessor/slot/slot.hpp +32 -0
- data/ext/boost/preprocessor/stringize.hpp +33 -0
- data/ext/boost/preprocessor/tuple/eat.hpp +57 -0
- data/ext/boost/preprocessor/tuple/elem.hpp +385 -0
- data/ext/boost/preprocessor/tuple/rem.hpp +72 -0
- data/ext/boost/preprocessor/tuple/to_list.hpp +62 -0
- data/ext/boost/range/as_literal.hpp +131 -0
- data/ext/boost/range/begin.hpp +132 -0
- data/ext/boost/range/config.hpp +54 -0
- data/ext/boost/range/const_iterator.hpp +64 -0
- data/ext/boost/range/detail/common.hpp +117 -0
- data/ext/boost/range/detail/implementation_help.hpp +99 -0
- data/ext/boost/range/detail/sfinae.hpp +77 -0
- data/ext/boost/range/detail/str_types.hpp +38 -0
- data/ext/boost/range/difference_type.hpp +29 -0
- data/ext/boost/range/distance.hpp +34 -0
- data/ext/boost/range/empty.hpp +34 -0
- data/ext/boost/range/end.hpp +131 -0
- data/ext/boost/range/functions.hpp +27 -0
- data/ext/boost/range/iterator.hpp +72 -0
- data/ext/boost/range/iterator_range.hpp +643 -0
- data/ext/boost/range/mutable_iterator.hpp +64 -0
- data/ext/boost/range/rbegin.hpp +65 -0
- data/ext/boost/range/rend.hpp +65 -0
- data/ext/boost/range/reverse_iterator.hpp +40 -0
- data/ext/boost/range/size.hpp +36 -0
- data/ext/boost/range/size_type.hpp +78 -0
- data/ext/boost/range/value_type.hpp +34 -0
- data/ext/boost/ref.hpp +178 -0
- data/ext/boost/shared_ptr.hpp +619 -0
- data/ext/boost/src/pthread/exceptions.cpp +146 -0
- data/ext/boost/src/pthread/once.cpp +51 -0
- data/ext/boost/src/pthread/thread.cpp +709 -0
- data/ext/boost/src/pthread/timeconv.inl +130 -0
- data/ext/boost/src/tss_null.cpp +34 -0
- data/ext/boost/src/win32/exceptions.cpp +124 -0
- data/ext/boost/src/win32/thread.cpp +629 -0
- data/ext/boost/src/win32/timeconv.inl +130 -0
- data/ext/boost/src/win32/tss_dll.cpp +72 -0
- data/ext/boost/src/win32/tss_pe.cpp +269 -0
- data/ext/boost/static_assert.hpp +122 -0
- data/ext/boost/thread/condition.hpp +16 -0
- data/ext/boost/thread/condition_variable.hpp +21 -0
- data/ext/boost/thread/detail/config.hpp +94 -0
- data/ext/boost/thread/detail/move.hpp +33 -0
- data/ext/boost/thread/detail/platform.hpp +71 -0
- data/ext/boost/thread/exceptions.hpp +109 -0
- data/ext/boost/thread/locks.hpp +589 -0
- data/ext/boost/thread/mutex.hpp +21 -0
- data/ext/boost/thread/once.hpp +29 -0
- data/ext/boost/thread/pthread/condition_variable.hpp +184 -0
- data/ext/boost/thread/pthread/condition_variable_fwd.hpp +66 -0
- data/ext/boost/thread/pthread/mutex.hpp +211 -0
- data/ext/boost/thread/pthread/once.hpp +85 -0
- data/ext/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +50 -0
- data/ext/boost/thread/pthread/recursive_mutex.hpp +249 -0
- data/ext/boost/thread/pthread/thread.hpp +339 -0
- data/ext/boost/thread/pthread/thread_data.hpp +102 -0
- data/ext/boost/thread/pthread/timespec.hpp +28 -0
- data/ext/boost/thread/pthread/tss.hpp +103 -0
- data/ext/boost/thread/recursive_mutex.hpp +21 -0
- data/ext/boost/thread/thread.hpp +22 -0
- data/ext/boost/thread/thread_time.hpp +46 -0
- data/ext/boost/thread/tss.hpp +18 -0
- data/ext/boost/thread/xtime.hpp +88 -0
- data/ext/boost/thread.hpp +21 -0
- data/ext/boost/throw_exception.hpp +46 -0
- data/ext/boost/token_functions.hpp +621 -0
- data/ext/boost/token_iterator.hpp +128 -0
- data/ext/boost/tokenizer.hpp +98 -0
- data/ext/boost/type.hpp +18 -0
- data/ext/boost/type_traits/add_const.hpp +47 -0
- data/ext/boost/type_traits/add_pointer.hpp +72 -0
- data/ext/boost/type_traits/add_reference.hpp +89 -0
- data/ext/boost/type_traits/alignment_of.hpp +100 -0
- data/ext/boost/type_traits/broken_compiler_spec.hpp +117 -0
- data/ext/boost/type_traits/composite_traits.hpp +29 -0
- data/ext/boost/type_traits/config.hpp +76 -0
- data/ext/boost/type_traits/conversion_traits.hpp +17 -0
- data/ext/boost/type_traits/detail/bool_trait_def.hpp +173 -0
- data/ext/boost/type_traits/detail/bool_trait_undef.hpp +27 -0
- data/ext/boost/type_traits/detail/cv_traits_impl.hpp +97 -0
- data/ext/boost/type_traits/detail/false_result.hpp +28 -0
- data/ext/boost/type_traits/detail/ice_and.hpp +35 -0
- data/ext/boost/type_traits/detail/ice_eq.hpp +36 -0
- data/ext/boost/type_traits/detail/ice_not.hpp +31 -0
- data/ext/boost/type_traits/detail/ice_or.hpp +34 -0
- data/ext/boost/type_traits/detail/is_function_ptr_helper.hpp +220 -0
- data/ext/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +817 -0
- data/ext/boost/type_traits/detail/size_t_trait_def.hpp +58 -0
- data/ext/boost/type_traits/detail/size_t_trait_undef.hpp +16 -0
- data/ext/boost/type_traits/detail/template_arity_spec.hpp +31 -0
- data/ext/boost/type_traits/detail/type_trait_def.hpp +61 -0
- data/ext/boost/type_traits/detail/type_trait_undef.hpp +19 -0
- data/ext/boost/type_traits/detail/yes_no_type.hpp +26 -0
- data/ext/boost/type_traits/function_traits.hpp +236 -0
- data/ext/boost/type_traits/has_nothrow_copy.hpp +39 -0
- data/ext/boost/type_traits/has_trivial_copy.hpp +49 -0
- data/ext/boost/type_traits/ice.hpp +20 -0
- data/ext/boost/type_traits/integral_constant.hpp +53 -0
- data/ext/boost/type_traits/intrinsics.hpp +153 -0
- data/ext/boost/type_traits/is_abstract.hpp +144 -0
- data/ext/boost/type_traits/is_arithmetic.hpp +43 -0
- data/ext/boost/type_traits/is_array.hpp +90 -0
- data/ext/boost/type_traits/is_class.hpp +128 -0
- data/ext/boost/type_traits/is_const.hpp +142 -0
- data/ext/boost/type_traits/is_convertible.hpp +418 -0
- data/ext/boost/type_traits/is_enum.hpp +180 -0
- data/ext/boost/type_traits/is_float.hpp +27 -0
- data/ext/boost/type_traits/is_function.hpp +95 -0
- data/ext/boost/type_traits/is_integral.hpp +73 -0
- data/ext/boost/type_traits/is_member_function_pointer.hpp +134 -0
- data/ext/boost/type_traits/is_member_pointer.hpp +114 -0
- data/ext/boost/type_traits/is_pod.hpp +135 -0
- data/ext/boost/type_traits/is_pointer.hpp +160 -0
- data/ext/boost/type_traits/is_reference.hpp +116 -0
- data/ext/boost/type_traits/is_same.hpp +103 -0
- data/ext/boost/type_traits/is_scalar.hpp +55 -0
- data/ext/boost/type_traits/is_union.hpp +49 -0
- data/ext/boost/type_traits/is_void.hpp +33 -0
- data/ext/boost/type_traits/is_volatile.hpp +131 -0
- data/ext/boost/type_traits/remove_const.hpp +78 -0
- data/ext/boost/type_traits/remove_cv.hpp +61 -0
- data/ext/boost/type_traits/remove_pointer.hpp +43 -0
- data/ext/boost/type_traits/remove_reference.hpp +50 -0
- data/ext/boost/type_traits/type_with_alignment.hpp +288 -0
- data/ext/boost/utility/addressof.hpp +58 -0
- data/ext/boost/utility/base_from_member.hpp +87 -0
- data/ext/boost/utility/compare_pointees.hpp +68 -0
- data/ext/boost/utility/enable_if.hpp +119 -0
- data/ext/boost/utility.hpp +19 -0
- data/ext/boost/visit_each.hpp +29 -0
- data/ext/boost/weak_ptr.hpp +188 -0
- data/ext/common/Application.h +511 -0
- data/ext/common/ApplicationPool.h +205 -0
- data/ext/common/ApplicationPoolServer.h +794 -0
- data/ext/common/ApplicationPoolServerExecutable.cpp +743 -0
- data/ext/common/ApplicationPoolStatusReporter.h +336 -0
- data/ext/common/Base64.cpp +143 -0
- data/ext/common/Base64.h +57 -0
- data/ext/common/CachedFileStat.cpp +62 -0
- data/ext/common/CachedFileStat.h +51 -0
- data/ext/common/CachedFileStat.hpp +243 -0
- data/ext/common/DummySpawnManager.h +108 -0
- data/ext/common/Exceptions.h +258 -0
- data/ext/common/FileChangeChecker.h +209 -0
- data/ext/common/Logging.cpp +65 -0
- data/ext/common/Logging.h +123 -0
- data/ext/common/MessageChannel.h +615 -0
- data/ext/common/PoolOptions.h +355 -0
- data/ext/common/SpawnManager.h +561 -0
- data/ext/common/StandardApplicationPool.h +819 -0
- data/ext/common/StaticString.h +148 -0
- data/ext/common/StringListCreator.h +83 -0
- data/ext/common/SystemTime.cpp +33 -0
- data/ext/common/SystemTime.h +88 -0
- data/ext/common/Timer.h +90 -0
- data/ext/common/Utils.cpp +681 -0
- data/ext/common/Utils.h +497 -0
- data/ext/common/Version.h +31 -0
- data/ext/nginx/Configuration.c +1098 -0
- data/ext/nginx/Configuration.h +71 -0
- data/ext/nginx/ContentHandler.c +1225 -0
- data/ext/nginx/ContentHandler.h +64 -0
- data/ext/nginx/HelperServer.cpp +850 -0
- data/ext/nginx/HttpStatusExtractor.h +350 -0
- data/ext/nginx/ScgiRequestParser.h +317 -0
- data/ext/nginx/StaticContentHandler.c +257 -0
- data/ext/nginx/StaticContentHandler.h +37 -0
- data/ext/nginx/config +45 -0
- data/ext/nginx/ngx_http_passenger_module.c +653 -0
- data/ext/nginx/ngx_http_passenger_module.h +72 -0
- data/ext/oxt/backtrace.cpp +177 -0
- data/ext/oxt/backtrace.hpp +135 -0
- data/ext/oxt/detail/backtrace_disabled.hpp +39 -0
- data/ext/oxt/detail/backtrace_enabled.hpp +155 -0
- data/ext/oxt/detail/spin_lock_gcc_x86.hpp +82 -0
- data/ext/oxt/detail/spin_lock_portable.hpp +38 -0
- data/ext/oxt/detail/spin_lock_pthreads.hpp +97 -0
- data/ext/oxt/detail/tracable_exception_disabled.hpp +46 -0
- data/ext/oxt/detail/tracable_exception_enabled.hpp +48 -0
- data/ext/oxt/macros.hpp +58 -0
- data/ext/oxt/spin_lock.hpp +55 -0
- data/ext/oxt/system_calls.cpp +340 -0
- data/ext/oxt/system_calls.hpp +243 -0
- data/ext/oxt/thread.cpp +32 -0
- data/ext/oxt/thread.hpp +239 -0
- data/ext/oxt/tracable_exception.cpp +87 -0
- data/ext/oxt/tracable_exception.hpp +35 -0
- data/ext/phusion_passenger/extconf.rb +36 -0
- data/ext/phusion_passenger/native_support.c +308 -0
- data/generators/colouringcode-passenger/USAGE +1 -0
- data/generators/colouringcode-passenger/passenger_template_generator.rb +16 -0
- data/generators/colouringcode-passenger/templates/app_exited_during_initialization.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/app_init_error.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/database_error.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/error_layout.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/framework_init_error.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/general_error.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/invalid_app_root.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/load_error.html.erb +0 -0
- data/generators/colouringcode-passenger/templates/version_not_found.html.erb +0 -0
- data/lib/phusion_passenger/abstract_installer.rb +196 -0
- data/lib/phusion_passenger/abstract_request_handler.rb +475 -0
- data/lib/phusion_passenger/abstract_server.rb +369 -0
- data/lib/phusion_passenger/abstract_server_collection.rb +306 -0
- data/lib/phusion_passenger/admin_tools/control_process.rb +150 -0
- data/lib/phusion_passenger/admin_tools.rb +48 -0
- data/lib/phusion_passenger/application.rb +113 -0
- data/lib/phusion_passenger/console_text_template.rb +66 -0
- data/lib/phusion_passenger/constants.rb +31 -0
- data/lib/phusion_passenger/dependencies.rb +393 -0
- data/lib/phusion_passenger/events.rb +50 -0
- data/lib/phusion_passenger/exceptions.rb +103 -0
- data/lib/phusion_passenger/html_template.rb +119 -0
- data/lib/phusion_passenger/message_channel.rb +229 -0
- data/lib/phusion_passenger/packaging.rb +39 -0
- data/lib/phusion_passenger/platform_info.rb +550 -0
- data/lib/phusion_passenger/rack/application_spawner.rb +146 -0
- data/lib/phusion_passenger/rack/request_handler.rb +125 -0
- data/lib/phusion_passenger/railz/application_spawner.rb +386 -0
- data/lib/phusion_passenger/railz/cgi_fixed.rb +68 -0
- data/lib/phusion_passenger/railz/framework_spawner.rb +334 -0
- data/lib/phusion_passenger/railz/request_handler.rb +73 -0
- data/lib/phusion_passenger/simple_benchmarking.rb +52 -0
- data/lib/phusion_passenger/spawn_manager.rb +372 -0
- data/lib/phusion_passenger/templates/apache2/apache_must_be_compiled_with_compatible_mpm.txt.erb +9 -0
- data/lib/phusion_passenger/templates/apache2/config_snippets.txt.erb +13 -0
- data/lib/phusion_passenger/templates/apache2/deployment_example.txt.erb +23 -0
- data/lib/phusion_passenger/templates/apache2/no_write_permission_to_passenger_root.txt.erb +9 -0
- data/lib/phusion_passenger/templates/apache2/possible_solutions_for_compilation_and_installation_problems.txt.erb +11 -0
- data/lib/phusion_passenger/templates/apache2/run_installer_as_root.txt.erb +8 -0
- data/lib/phusion_passenger/templates/apache2/welcome.txt.erb +15 -0
- data/lib/phusion_passenger/templates/app_exited_during_initialization.html.erb +38 -0
- data/lib/phusion_passenger/templates/app_init_error.html.erb +64 -0
- data/lib/phusion_passenger/templates/database_error.html.erb +66 -0
- data/lib/phusion_passenger/templates/error_layout.css +97 -0
- data/lib/phusion_passenger/templates/error_layout.html.erb +39 -0
- data/lib/phusion_passenger/templates/framework_init_error.html.erb +39 -0
- data/lib/phusion_passenger/templates/general_error.html.erb +22 -0
- data/lib/phusion_passenger/templates/invalid_app_root.html.erb +9 -0
- data/lib/phusion_passenger/templates/load_error.html.erb +46 -0
- data/lib/phusion_passenger/templates/nginx/ask_for_extra_configure_flags.txt.erb +8 -0
- data/lib/phusion_passenger/templates/nginx/cannot_write_to_dir.txt.erb +11 -0
- data/lib/phusion_passenger/templates/nginx/config_snippets.txt.erb +17 -0
- data/lib/phusion_passenger/templates/nginx/config_snippets_inserted.txt.erb +20 -0
- data/lib/phusion_passenger/templates/nginx/confirm_extra_configure_flags.txt.erb +5 -0
- data/lib/phusion_passenger/templates/nginx/deployment_example.txt.erb +22 -0
- data/lib/phusion_passenger/templates/nginx/pcre_could_not_be_downloaded.txt.erb +11 -0
- data/lib/phusion_passenger/templates/nginx/pcre_could_not_be_extracted.txt.erb +11 -0
- data/lib/phusion_passenger/templates/nginx/possible_solutions_for_compilation_and_installation_problems.txt.erb +11 -0
- data/lib/phusion_passenger/templates/nginx/possible_solutions_for_download_and_extraction_problems.txt.erb +20 -0
- data/lib/phusion_passenger/templates/nginx/query_download_and_install.txt.erb +21 -0
- data/lib/phusion_passenger/templates/nginx/run_installer_as_root.txt.erb +8 -0
- data/lib/phusion_passenger/templates/nginx/welcome.txt.erb +15 -0
- data/lib/phusion_passenger/templates/version_not_found.html.erb +34 -0
- data/lib/phusion_passenger/utils.rb +603 -0
- data/lib/phusion_passenger/wsgi/application_spawner.rb +104 -0
- data/lib/phusion_passenger/wsgi/request_handler.py +199 -0
- data/man/passenger-config.1 +29 -0
- data/man/passenger-make-enterprisey.8 +23 -0
- data/man/passenger-memory-stats.8 +33 -0
- data/man/passenger-status.8 +43 -0
- data/man/passenger-stress-test.1 +43 -0
- data/misc/copy_boost_headers.rb +125 -0
- data/misc/find_owner_pipe_leaks.rb +128 -0
- data/misc/rake/cplusplus.rb +57 -0
- data/misc/rake/extensions.rb +182 -0
- data/misc/rake/gempackagetask.rb +99 -0
- data/misc/rake/packagetask.rb +186 -0
- data/misc/rake/rdoctask.rb +209 -0
- data/misc/render_error_pages.rb +116 -0
- data/test/ApplicationPoolServerTest.cpp +114 -0
- data/test/ApplicationPoolServer_ApplicationPoolTest.cpp +33 -0
- data/test/ApplicationPoolTest.cpp +599 -0
- data/test/Base64Test.cpp +48 -0
- data/test/CachedFileStatTest.cpp +402 -0
- data/test/CxxTestMain.cpp +143 -0
- data/test/FileChangeCheckerTest.cpp +331 -0
- data/test/HttpStatusExtractorTest.cpp +198 -0
- data/test/MessageChannelTest.cpp +312 -0
- data/test/PoolOptionsTest.cpp +117 -0
- data/test/ScgiRequestParserTest.cpp +337 -0
- data/test/SpawnManagerTest.cpp +64 -0
- data/test/StandardApplicationPoolTest.cpp +27 -0
- data/test/StaticStringTest.cpp +51 -0
- data/test/SystemTimeTest.cpp +37 -0
- data/test/UtilsTest.cpp +257 -0
- data/test/config.yml.example +30 -0
- data/test/integration_tests/apache2_tests.rb +595 -0
- data/test/integration_tests/hello_world_rack_spec.rb +36 -0
- data/test/integration_tests/hello_world_wsgi_spec.rb +41 -0
- data/test/integration_tests/mycook_spec.rb +192 -0
- data/test/integration_tests/nginx_tests.rb +151 -0
- data/test/oxt/backtrace_test.cpp +128 -0
- data/test/oxt/oxt_test_main.cpp +25 -0
- data/test/oxt/syscall_interruption_test.cpp +38 -0
- data/test/ruby/abstract_request_handler_spec.rb +85 -0
- data/test/ruby/abstract_server_collection_spec.rb +246 -0
- data/test/ruby/abstract_server_spec.rb +51 -0
- data/test/ruby/application_spec.rb +43 -0
- data/test/ruby/message_channel_spec.rb +170 -0
- data/test/ruby/rack/application_spawner_spec.rb +99 -0
- data/test/ruby/rails/application_spawner_spec.rb +159 -0
- data/test/ruby/rails/framework_spawner_spec.rb +133 -0
- data/test/ruby/rails/minimal_spawner_spec.rb +93 -0
- data/test/ruby/rails/spawner_error_handling_spec.rb +107 -0
- data/test/ruby/rails/spawner_privilege_lowering_spec.rb +97 -0
- data/test/ruby/spawn_manager_spec.rb +205 -0
- data/test/ruby/spawn_server_spec.rb +26 -0
- data/test/ruby/utils_spec.rb +335 -0
- data/test/ruby/wsgi/application_spawner_spec.rb +54 -0
- data/test/stub/apache2/httpd.conf.erb +81 -0
- data/test/stub/apache2/mime.types +748 -0
- data/test/stub/garbage1.dat +0 -0
- data/test/stub/garbage2.dat +0 -0
- data/test/stub/garbage3.dat +0 -0
- data/test/stub/http_request.yml +23 -0
- data/test/stub/message_channel.rb +9 -0
- data/test/stub/message_channel_2.rb +10 -0
- data/test/stub/message_channel_3.rb +17 -0
- data/test/stub/nginx/koi-utf +109 -0
- data/test/stub/nginx/koi-win +103 -0
- data/test/stub/nginx/mime.types +70 -0
- data/test/stub/nginx/nginx.conf.erb +57 -0
- data/test/stub/nginx/win-utf +126 -0
- data/test/stub/rack/config.ru +4 -0
- data/test/stub/rack/public/rack.jpg +0 -0
- data/test/stub/rails_apps/foobar/app/controllers/application.rb +12 -0
- data/test/stub/rails_apps/foobar/app/controllers/bar_controller_1.rb +5 -0
- data/test/stub/rails_apps/foobar/app/controllers/bar_controller_2.rb +5 -0
- data/test/stub/rails_apps/foobar/app/controllers/foo_controller.rb +21 -0
- data/test/stub/rails_apps/foobar/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/foobar/config/boot.rb +108 -0
- data/test/stub/rails_apps/foobar/config/database.yml +19 -0
- data/test/stub/rails_apps/foobar/config/environment.rb +59 -0
- data/test/stub/rails_apps/foobar/config/environments/development.rb +17 -0
- data/test/stub/rails_apps/foobar/config/environments/production.rb +18 -0
- data/test/stub/rails_apps/foobar/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/foobar/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/foobar/config/routes.rb +35 -0
- data/test/stub/rails_apps/mycook/app/controllers/application.rb +12 -0
- data/test/stub/rails_apps/mycook/app/controllers/recipes_controller.rb +5 -0
- data/test/stub/rails_apps/mycook/app/controllers/uploads_controller.rb +15 -0
- data/test/stub/rails_apps/mycook/app/controllers/welcome_controller.rb +71 -0
- data/test/stub/rails_apps/mycook/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/mycook/app/views/layouts/default.rhtml +26 -0
- data/test/stub/rails_apps/mycook/app/views/recipes/create.rhtml +13 -0
- data/test/stub/rails_apps/mycook/app/views/recipes/index.rhtml +3 -0
- data/test/stub/rails_apps/mycook/app/views/recipes/new.rhtml +8 -0
- data/test/stub/rails_apps/mycook/app/views/uploads/index.rhtml +1 -0
- data/test/stub/rails_apps/mycook/app/views/uploads/new.html.erb +8 -0
- data/test/stub/rails_apps/mycook/app/views/welcome/cached.rhtml +1 -0
- data/test/stub/rails_apps/mycook/app/views/welcome/index.rhtml +20 -0
- data/test/stub/rails_apps/mycook/config/boot.rb +108 -0
- data/test/stub/rails_apps/mycook/config/database.yml +19 -0
- data/test/stub/rails_apps/mycook/config/environment.rb +61 -0
- data/test/stub/rails_apps/mycook/config/environments/development.rb +18 -0
- data/test/stub/rails_apps/mycook/config/environments/production.rb +19 -0
- data/test/stub/rails_apps/mycook/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/mycook/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/mycook/config/routes.rb +38 -0
- data/test/stub/rails_apps/mycook/log/useless.txt +1 -0
- data/test/stub/rails_apps/mycook/public/404.html +30 -0
- data/test/stub/rails_apps/mycook/public/422.html +30 -0
- data/test/stub/rails_apps/mycook/public/500.html +30 -0
- data/test/stub/rails_apps/mycook/public/dispatch.cgi +10 -0
- data/test/stub/rails_apps/mycook/public/dispatch.fcgi +24 -0
- data/test/stub/rails_apps/mycook/public/dispatch.rb +10 -0
- data/test/stub/rails_apps/mycook/public/favicon.ico +0 -0
- data/test/stub/rails_apps/mycook/public/images/angrywizard.gif +0 -0
- data/test/stub/rails_apps/mycook/public/images/cookbook.gif +0 -0
- data/test/stub/rails_apps/mycook/public/images/header.png +0 -0
- data/test/stub/rails_apps/mycook/public/images/rails.png +0 -0
- data/test/stub/rails_apps/mycook/public/javascripts/application.js +2 -0
- data/test/stub/rails_apps/mycook/public/javascripts/controls.js +963 -0
- data/test/stub/rails_apps/mycook/public/javascripts/dragdrop.js +972 -0
- data/test/stub/rails_apps/mycook/public/javascripts/effects.js +1120 -0
- data/test/stub/rails_apps/mycook/public/javascripts/prototype.js +4225 -0
- data/test/stub/rails_apps/mycook/public/robots.txt +5 -0
- data/test/stub/rails_apps/mycook/public/uploads.html +26 -0
- data/test/stub/rails_apps/mycook/public/welcome/cached.html +26 -0
- data/test/stub/rails_apps/mycook/sites/some.site/public/uploads.html +26 -0
- data/test/stub/rails_apps/mycook/sites/some.site/public/welcome/cached.html +26 -0
- data/test/stub/rails_apps/mycook/tmp/cache/useless.txt +1 -0
- data/test/stub/rails_apps/mycook/tmp/pids/useless.txt +1 -0
- data/test/stub/rails_apps/mycook/tmp/sessions/useless.txt +1 -0
- data/test/stub/rails_apps/mycook/tmp/sockets/useless.txt +1 -0
- data/test/stub/spawn_server.rb +20 -0
- data/test/stub/upload_data.txt +494 -0
- data/test/stub/vendor_rails/minimal/README +1 -0
- data/test/stub/vendor_rails/minimal/actionmailer/lib/action_mailer.rb +0 -0
- data/test/stub/vendor_rails/minimal/actionpack/lib/action_controller.rb +19 -0
- data/test/stub/vendor_rails/minimal/actionpack/lib/action_pack.rb +0 -0
- data/test/stub/vendor_rails/minimal/actionpack/lib/action_view.rb +0 -0
- data/test/stub/vendor_rails/minimal/activerecord/lib/active_record.rb +7 -0
- data/test/stub/vendor_rails/minimal/activeresource/lib/active_resource.rb +0 -0
- data/test/stub/vendor_rails/minimal/activesupport/lib/active_support/whiny_nil.rb +0 -0
- data/test/stub/vendor_rails/minimal/activesupport/lib/active_support.rb +17 -0
- data/test/stub/vendor_rails/minimal/railties/lib/dispatcher.rb +0 -0
- data/test/stub/vendor_rails/minimal/railties/lib/initializer.rb +52 -0
- data/test/stub/vendor_rails/minimal/railties/lib/ruby_version_check.rb +1 -0
- data/test/stub/wsgi/passenger_wsgi.py +3 -0
- data/test/stub/wsgi/public/wsgi-snake.jpg +0 -0
- data/test/stub/zsfa/header.png +0 -0
- data/test/stub/zsfa/index.html +14 -0
- data/test/stub/zsfa/zsfa.png +0 -0
- data/test/support/Support.cpp +84 -0
- data/test/support/Support.h +118 -0
- data/test/support/apache2_controller.rb +250 -0
- data/test/support/config.rb +38 -0
- data/test/support/multipart.rb +62 -0
- data/test/support/nginx_controller.rb +98 -0
- data/test/support/run_rspec_tests.rb +10 -0
- data/test/support/test_helper.rb +207 -0
- data/test/support/tut.h +1234 -0
- data/test/support/tut_reporter.h +256 -0
- data/test/support/valgrind.h +2539 -0
- data/vendor/README +13 -0
- data/vendor/README_FOR_PACKAGERS +1 -0
- data/vendor/rack-1.0.0-git/COPYING +18 -0
- data/vendor/rack-1.0.0-git/KNOWN-ISSUES +18 -0
- data/vendor/rack-1.0.0-git/README +353 -0
- data/vendor/rack-1.0.0-git/Rakefile +164 -0
- data/vendor/rack-1.0.0-git/lib/rack/adapter/camping.rb +22 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/handler.rb +37 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/request.rb +37 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/basic.rb +58 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/md5.rb +124 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/nonce.rb +51 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/params.rb +55 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/request.rb +40 -0
- data/vendor/rack-1.0.0-git/lib/rack/auth/openid.rb +487 -0
- data/vendor/rack-1.0.0-git/lib/rack/builder.rb +63 -0
- data/vendor/rack-1.0.0-git/lib/rack/cascade.rb +41 -0
- data/vendor/rack-1.0.0-git/lib/rack/chunked.rb +49 -0
- data/vendor/rack-1.0.0-git/lib/rack/commonlogger.rb +52 -0
- data/vendor/rack-1.0.0-git/lib/rack/conditionalget.rb +47 -0
- data/vendor/rack-1.0.0-git/lib/rack/content_length.rb +29 -0
- data/vendor/rack-1.0.0-git/lib/rack/content_type.rb +23 -0
- data/vendor/rack-1.0.0-git/lib/rack/deflater.rb +96 -0
- data/vendor/rack-1.0.0-git/lib/rack/directory.rb +153 -0
- data/vendor/rack-1.0.0-git/lib/rack/file.rb +88 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/cgi.rb +61 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/evented_mongrel.rb +8 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/fastcgi.rb +88 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/lsws.rb +55 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/mongrel.rb +84 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/scgi.rb +59 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/swiftiplied_mongrel.rb +8 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/thin.rb +18 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler/webrick.rb +67 -0
- data/vendor/rack-1.0.0-git/lib/rack/handler.rb +69 -0
- data/vendor/rack-1.0.0-git/lib/rack/head.rb +19 -0
- data/vendor/rack-1.0.0-git/lib/rack/lint.rb +537 -0
- data/vendor/rack-1.0.0-git/lib/rack/lobster.rb +65 -0
- data/vendor/rack-1.0.0-git/lib/rack/lock.rb +16 -0
- data/vendor/rack-1.0.0-git/lib/rack/methodoverride.rb +27 -0
- data/vendor/rack-1.0.0-git/lib/rack/mime.rb +204 -0
- data/vendor/rack-1.0.0-git/lib/rack/mock.rb +184 -0
- data/vendor/rack-1.0.0-git/lib/rack/recursive.rb +57 -0
- data/vendor/rack-1.0.0-git/lib/rack/reloader.rb +106 -0
- data/vendor/rack-1.0.0-git/lib/rack/request.rb +248 -0
- data/vendor/rack-1.0.0-git/lib/rack/response.rb +183 -0
- data/vendor/rack-1.0.0-git/lib/rack/rewindable_input.rb +100 -0
- data/vendor/rack-1.0.0-git/lib/rack/session/abstract/id.rb +142 -0
- data/vendor/rack-1.0.0-git/lib/rack/session/cookie.rb +91 -0
- data/vendor/rack-1.0.0-git/lib/rack/session/memcache.rb +109 -0
- data/vendor/rack-1.0.0-git/lib/rack/session/pool.rb +100 -0
- data/vendor/rack-1.0.0-git/lib/rack/showexceptions.rb +349 -0
- data/vendor/rack-1.0.0-git/lib/rack/showstatus.rb +106 -0
- data/vendor/rack-1.0.0-git/lib/rack/static.rb +38 -0
- data/vendor/rack-1.0.0-git/lib/rack/urlmap.rb +55 -0
- data/vendor/rack-1.0.0-git/lib/rack/utils.rb +522 -0
- data/vendor/rack-1.0.0-git/lib/rack.rb +90 -0
- metadata +1152 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
#ifndef _GREGORIAN__CONVERSION_HPP___
|
|
2
|
+
#define _GREGORIAN__CONVERSION_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2004-2005 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland, Bart Garst
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include <exception>
|
|
13
|
+
#include "boost/date_time/gregorian/gregorian_types.hpp"
|
|
14
|
+
#include "boost/date_time/c_time.hpp"
|
|
15
|
+
#if defined(USE_DATE_TIME_PRE_1_33_FACET_IO)
|
|
16
|
+
# if defined(BOOST_DATE_TIME_INCLUDE_LIMITED_HEADERS)
|
|
17
|
+
# include "boost/date_time/gregorian/formatters_limited.hpp"
|
|
18
|
+
# else
|
|
19
|
+
# include "boost/date_time/gregorian/formatters.hpp"
|
|
20
|
+
# endif // BOOST_DATE_TIME_INCLUDE_LIMITED_HEADERS
|
|
21
|
+
#else
|
|
22
|
+
# include <sstream>
|
|
23
|
+
# include "boost/date_time/gregorian/gregorian_io.hpp"
|
|
24
|
+
#endif // USE_DATE_TIME_PRE_1_33_FACET_IO
|
|
25
|
+
|
|
26
|
+
namespace boost {
|
|
27
|
+
|
|
28
|
+
namespace gregorian {
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
//! Converts a date to a tm struct. Throws out_of_range exception if date is a special value
|
|
32
|
+
inline
|
|
33
|
+
std::tm to_tm(const date& d)
|
|
34
|
+
{
|
|
35
|
+
if(d.is_pos_infinity() || d.is_neg_infinity() || d.is_not_a_date()){
|
|
36
|
+
#if defined(USE_DATE_TIME_PRE_1_33_FACET_IO)
|
|
37
|
+
std::string s("tm unable to handle date value of " + to_simple_string(d));
|
|
38
|
+
throw std::out_of_range(s);
|
|
39
|
+
#else
|
|
40
|
+
std::stringstream ss;
|
|
41
|
+
ss << "tm unable to handle date value of " << d;
|
|
42
|
+
throw std::out_of_range(ss.str());
|
|
43
|
+
#endif // USE_DATE_TIME_PRE_1_33_FACET_IO
|
|
44
|
+
}
|
|
45
|
+
std::tm datetm;
|
|
46
|
+
boost::gregorian::date::ymd_type ymd = d.year_month_day();
|
|
47
|
+
datetm.tm_year = ymd.year-1900;
|
|
48
|
+
datetm.tm_mon = ymd.month-1;
|
|
49
|
+
datetm.tm_mday = ymd.day;
|
|
50
|
+
datetm.tm_wday = d.day_of_week();
|
|
51
|
+
datetm.tm_yday = d.day_of_year()-1;
|
|
52
|
+
datetm.tm_hour = datetm.tm_min = datetm.tm_sec = 0;
|
|
53
|
+
datetm.tm_isdst = -1; // negative because not enough info to set tm_isdst
|
|
54
|
+
return datetm;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//! Converts a tm structure into a date dropping the any time values.
|
|
58
|
+
inline
|
|
59
|
+
date date_from_tm(const std::tm& datetm)
|
|
60
|
+
{
|
|
61
|
+
return date(static_cast<unsigned short>(datetm.tm_year+1900),
|
|
62
|
+
static_cast<unsigned short>(datetm.tm_mon+1),
|
|
63
|
+
static_cast<unsigned short>(datetm.tm_mday));
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
} } //namespace boost::gregorian
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
#endif
|
|
73
|
+
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
#ifndef GREGORIAN_FORMATTERS_HPP___
|
|
2
|
+
#define GREGORIAN_FORMATTERS_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland, Bart Garst
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/compiler_config.hpp"
|
|
13
|
+
#include "boost/date_time/gregorian/gregorian_types.hpp"
|
|
14
|
+
#if defined(BOOST_DATE_TIME_INCLUDE_LIMITED_HEADERS)
|
|
15
|
+
#include "boost/date_time/date_formatting_limited.hpp"
|
|
16
|
+
#else
|
|
17
|
+
#include "boost/date_time/date_formatting.hpp"
|
|
18
|
+
#endif
|
|
19
|
+
#include "boost/date_time/iso_format.hpp"
|
|
20
|
+
#include "boost/date_time/date_format_simple.hpp"
|
|
21
|
+
|
|
22
|
+
/* NOTE: "to_*_string" code for older compilers, ones that define
|
|
23
|
+
* BOOST_DATE_TIME_INCLUDE_LIMITED_HEADERS, is located in
|
|
24
|
+
* formatters_limited.hpp
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
namespace boost {
|
|
28
|
+
namespace gregorian {
|
|
29
|
+
|
|
30
|
+
// wrapper function for to_simple_(w)string(date)
|
|
31
|
+
template<class charT>
|
|
32
|
+
inline
|
|
33
|
+
std::basic_string<charT> to_simple_string_type(const date& d) {
|
|
34
|
+
return date_time::date_formatter<date,date_time::simple_format<charT>,charT>::date_to_string(d);
|
|
35
|
+
}
|
|
36
|
+
//! To YYYY-mmm-DD string where mmm 3 char month name. Example: 2002-Jan-01
|
|
37
|
+
/*!\ingroup date_format
|
|
38
|
+
*/
|
|
39
|
+
inline std::string to_simple_string(const date& d) {
|
|
40
|
+
return to_simple_string_type<char>(d);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
// wrapper function for to_simple_(w)string(date_period)
|
|
45
|
+
template<class charT>
|
|
46
|
+
inline std::basic_string<charT> to_simple_string_type(const date_period& d) {
|
|
47
|
+
typedef std::basic_string<charT> string_type;
|
|
48
|
+
charT b = '[', m = '/', e=']';
|
|
49
|
+
|
|
50
|
+
string_type d1(date_time::date_formatter<date,date_time::simple_format<charT>,charT>::date_to_string(d.begin()));
|
|
51
|
+
string_type d2(date_time::date_formatter<date,date_time::simple_format<charT>,charT>::date_to_string(d.last()));
|
|
52
|
+
return string_type(b + d1 + m + d2 + e);
|
|
53
|
+
}
|
|
54
|
+
//! Convert date period to simple string. Example: [2002-Jan-01/2002-Jan-02]
|
|
55
|
+
/*!\ingroup date_format
|
|
56
|
+
*/
|
|
57
|
+
inline std::string to_simple_string(const date_period& d) {
|
|
58
|
+
return to_simple_string_type<char>(d);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// wrapper function for to_iso_(w)string(date_period)
|
|
62
|
+
template<class charT>
|
|
63
|
+
inline std::basic_string<charT> to_iso_string_type(const date_period& d) {
|
|
64
|
+
charT sep = '/';
|
|
65
|
+
std::basic_string<charT> s(date_time::date_formatter<date,date_time::iso_format<charT>,charT>::date_to_string(d.begin()));
|
|
66
|
+
return s + sep + date_time::date_formatter<date,date_time::iso_format<charT>,charT>::date_to_string(d.last());
|
|
67
|
+
}
|
|
68
|
+
//! Date period to iso standard format CCYYMMDD/CCYYMMDD. Example: 20021225/20021231
|
|
69
|
+
/*!\ingroup date_format
|
|
70
|
+
*/
|
|
71
|
+
inline std::string to_iso_string(const date_period& d) {
|
|
72
|
+
return to_iso_string_type<char>(d);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
// wrapper function for to_iso_extended_(w)string(date)
|
|
77
|
+
template<class charT>
|
|
78
|
+
inline std::basic_string<charT> to_iso_extended_string_type(const date& d) {
|
|
79
|
+
return date_time::date_formatter<date,date_time::iso_extended_format<charT>,charT>::date_to_string(d);
|
|
80
|
+
}
|
|
81
|
+
//! Convert to iso extended format string CCYY-MM-DD. Example 2002-12-31
|
|
82
|
+
/*!\ingroup date_format
|
|
83
|
+
*/
|
|
84
|
+
inline std::string to_iso_extended_string(const date& d) {
|
|
85
|
+
return to_iso_extended_string_type<char>(d);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// wrapper function for to_iso_(w)string(date)
|
|
89
|
+
template<class charT>
|
|
90
|
+
inline std::basic_string<charT> to_iso_string_type(const date& d) {
|
|
91
|
+
return date_time::date_formatter<date,date_time::iso_format<charT>,charT>::date_to_string(d);
|
|
92
|
+
}
|
|
93
|
+
//! Convert to iso standard string YYYYMMDD. Example: 20021231
|
|
94
|
+
/*!\ingroup date_format
|
|
95
|
+
*/
|
|
96
|
+
inline std::string to_iso_string(const date& d) {
|
|
97
|
+
return to_iso_string_type<char>(d);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
// wrapper function for to_sql_(w)string(date)
|
|
104
|
+
template<class charT>
|
|
105
|
+
inline std::basic_string<charT> to_sql_string_type(const date& d)
|
|
106
|
+
{
|
|
107
|
+
date::ymd_type ymd = d.year_month_day();
|
|
108
|
+
std::basic_ostringstream<charT> ss;
|
|
109
|
+
ss << ymd.year << "-"
|
|
110
|
+
<< std::setw(2) << std::setfill(ss.widen('0'))
|
|
111
|
+
<< ymd.month.as_number() //solves problem with gcc 3.1 hanging
|
|
112
|
+
<< "-"
|
|
113
|
+
<< std::setw(2) << std::setfill(ss.widen('0'))
|
|
114
|
+
<< ymd.day;
|
|
115
|
+
return ss.str();
|
|
116
|
+
}
|
|
117
|
+
inline std::string to_sql_string(const date& d) {
|
|
118
|
+
return to_sql_string_type<char>(d);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
#if !defined(BOOST_NO_STD_WSTRING)
|
|
123
|
+
//! Convert date period to simple string. Example: [2002-Jan-01/2002-Jan-02]
|
|
124
|
+
/*!\ingroup date_format
|
|
125
|
+
*/
|
|
126
|
+
inline std::wstring to_simple_wstring(const date_period& d) {
|
|
127
|
+
return to_simple_string_type<wchar_t>(d);
|
|
128
|
+
}
|
|
129
|
+
//! To YYYY-mmm-DD string where mmm 3 char month name. Example: 2002-Jan-01
|
|
130
|
+
/*!\ingroup date_format
|
|
131
|
+
*/
|
|
132
|
+
inline std::wstring to_simple_wstring(const date& d) {
|
|
133
|
+
return to_simple_string_type<wchar_t>(d);
|
|
134
|
+
}
|
|
135
|
+
//! Date period to iso standard format CCYYMMDD/CCYYMMDD. Example: 20021225/20021231
|
|
136
|
+
/*!\ingroup date_format
|
|
137
|
+
*/
|
|
138
|
+
inline std::wstring to_iso_wstring(const date_period& d) {
|
|
139
|
+
return to_iso_string_type<wchar_t>(d);
|
|
140
|
+
}
|
|
141
|
+
//! Convert to iso extended format string CCYY-MM-DD. Example 2002-12-31
|
|
142
|
+
/*!\ingroup date_format
|
|
143
|
+
*/
|
|
144
|
+
inline std::wstring to_iso_extended_wstring(const date& d) {
|
|
145
|
+
return to_iso_extended_string_type<wchar_t>(d);
|
|
146
|
+
}
|
|
147
|
+
//! Convert to iso standard string YYYYMMDD. Example: 20021231
|
|
148
|
+
/*!\ingroup date_format
|
|
149
|
+
*/
|
|
150
|
+
inline std::wstring to_iso_wstring(const date& d) {
|
|
151
|
+
return to_iso_string_type<wchar_t>(d);
|
|
152
|
+
}
|
|
153
|
+
inline std::wstring to_sql_wstring(const date& d) {
|
|
154
|
+
return to_sql_string_type<wchar_t>(d);
|
|
155
|
+
}
|
|
156
|
+
#endif // BOOST_NO_STD_WSTRING
|
|
157
|
+
|
|
158
|
+
} } //namespace gregorian
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
#endif
|
|
162
|
+
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
#ifndef GREGORIAN_FORMATTERS_LIMITED_HPP___
|
|
2
|
+
#define GREGORIAN_FORMATTERS_LIMITED_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland, Bart Garst
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/gregorian/gregorian_types.hpp"
|
|
13
|
+
#include "boost/date_time/date_formatting_limited.hpp"
|
|
14
|
+
#include "boost/date_time/iso_format.hpp"
|
|
15
|
+
#include "boost/date_time/date_format_simple.hpp"
|
|
16
|
+
#include "boost/date_time/compiler_config.hpp"
|
|
17
|
+
|
|
18
|
+
namespace boost {
|
|
19
|
+
namespace gregorian {
|
|
20
|
+
|
|
21
|
+
//! To YYYY-mmm-DD string where mmm 3 char month name. Example: 2002-Jan-01
|
|
22
|
+
/*!\ingroup date_format
|
|
23
|
+
*/
|
|
24
|
+
inline std::string to_simple_string(const date& d) {
|
|
25
|
+
return date_time::date_formatter<date,date_time::simple_format<char> >::date_to_string(d);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
//! Convert date period to simple string. Example: [2002-Jan-01/2002-Jan-02]
|
|
29
|
+
/*!\ingroup date_format
|
|
30
|
+
*/
|
|
31
|
+
inline std::string to_simple_string(const date_period& d) {
|
|
32
|
+
std::string s("[");
|
|
33
|
+
std::string d1(date_time::date_formatter<date,date_time::simple_format<char> >::date_to_string(d.begin()));
|
|
34
|
+
std::string d2(date_time::date_formatter<date,date_time::simple_format<char> >::date_to_string(d.last()));
|
|
35
|
+
return std::string("[" + d1 + "/" + d2 + "]");
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
//! Date period to iso standard format CCYYMMDD/CCYYMMDD. Example: 20021225/20021231
|
|
39
|
+
/*!\ingroup date_format
|
|
40
|
+
*/
|
|
41
|
+
inline std::string to_iso_string(const date_period& d) {
|
|
42
|
+
std::string s(date_time::date_formatter<date,date_time::iso_format<char> >::date_to_string(d.begin()));
|
|
43
|
+
return s + "/" + date_time::date_formatter<date,date_time::iso_format<char> >::date_to_string(d.last());
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
//! Convert to iso extended format string CCYY-MM-DD. Example 2002-12-31
|
|
48
|
+
/*!\ingroup date_format
|
|
49
|
+
*/
|
|
50
|
+
inline std::string to_iso_extended_string(const date& d) {
|
|
51
|
+
return date_time::date_formatter<date,date_time::iso_extended_format<char> >::date_to_string(d);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
//! Convert to iso standard string YYYYMMDD. Example: 20021231
|
|
55
|
+
/*!\ingroup date_format
|
|
56
|
+
*/
|
|
57
|
+
inline std::string to_iso_string(const date& d) {
|
|
58
|
+
return date_time::date_formatter<date,date_time::iso_format<char> >::date_to_string(d);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
inline std::string to_sql_string(const date& d)
|
|
64
|
+
{
|
|
65
|
+
date::ymd_type ymd = d.year_month_day();
|
|
66
|
+
std::ostringstream ss;
|
|
67
|
+
ss << ymd.year << "-"
|
|
68
|
+
<< std::setw(2) << std::setfill('0')
|
|
69
|
+
<< ymd.month.as_number() //solves problem with gcc 3.1 hanging
|
|
70
|
+
<< "-"
|
|
71
|
+
<< std::setw(2) << std::setfill('0')
|
|
72
|
+
<< ymd.day;
|
|
73
|
+
return ss.str();
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
} } //namespace gregorian
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
#endif
|
|
81
|
+
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#ifndef GREGORIAN_GREGORIAN_CALENDAR_HPP__
|
|
2
|
+
#define GREGORIAN_GREGORIAN_CALENDAR_HPP__
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/gregorian/greg_weekday.hpp"
|
|
13
|
+
#include "boost/date_time/gregorian/greg_day_of_year.hpp"
|
|
14
|
+
#include "boost/date_time/gregorian_calendar.hpp"
|
|
15
|
+
#include "boost/date_time/gregorian/greg_ymd.hpp"
|
|
16
|
+
#include "boost/date_time/int_adapter.hpp"
|
|
17
|
+
|
|
18
|
+
namespace boost {
|
|
19
|
+
namespace gregorian {
|
|
20
|
+
|
|
21
|
+
//!An internal date representation that includes infinities, not a date
|
|
22
|
+
typedef date_time::int_adapter<unsigned long> fancy_date_rep;
|
|
23
|
+
|
|
24
|
+
//! Gregorian calendar for this implementation, hard work in the base
|
|
25
|
+
class gregorian_calendar :
|
|
26
|
+
public date_time::gregorian_calendar_base<greg_year_month_day, fancy_date_rep::int_type> {
|
|
27
|
+
public:
|
|
28
|
+
//! Type to hold a weekday (eg: Sunday, Monday,...)
|
|
29
|
+
typedef greg_weekday day_of_week_type;
|
|
30
|
+
//! Counter type from 1 to 366 for gregorian dates.
|
|
31
|
+
typedef greg_day_of_year_rep day_of_year_type;
|
|
32
|
+
//! Internal date representation that handles infinity, not a date
|
|
33
|
+
typedef fancy_date_rep date_rep_type;
|
|
34
|
+
//! Date rep implements the traits stuff as well
|
|
35
|
+
typedef fancy_date_rep date_traits_type;
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
private:
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
} } //namespace gregorian
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
#endif
|
|
47
|
+
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
#ifndef GREG_DATE_HPP___
|
|
2
|
+
#define GREG_DATE_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/date.hpp"
|
|
13
|
+
#include "boost/date_time/special_defs.hpp"
|
|
14
|
+
#include "boost/date_time/gregorian/greg_calendar.hpp"
|
|
15
|
+
#include "boost/date_time/gregorian/greg_duration.hpp"
|
|
16
|
+
|
|
17
|
+
namespace boost {
|
|
18
|
+
namespace gregorian {
|
|
19
|
+
|
|
20
|
+
//bring special enum values into the namespace
|
|
21
|
+
using date_time::special_values;
|
|
22
|
+
using date_time::not_special;
|
|
23
|
+
using date_time::neg_infin;
|
|
24
|
+
using date_time::pos_infin;
|
|
25
|
+
using date_time::not_a_date_time;
|
|
26
|
+
using date_time::max_date_time;
|
|
27
|
+
using date_time::min_date_time;
|
|
28
|
+
|
|
29
|
+
//! A date type based on gregorian_calendar
|
|
30
|
+
/*! This class is the primary interface for programming with
|
|
31
|
+
greogorian dates. The is a lightweight type that can be
|
|
32
|
+
freely passed by value. All comparison operators are
|
|
33
|
+
supported.
|
|
34
|
+
\ingroup date_basics
|
|
35
|
+
*/
|
|
36
|
+
class date : public date_time::date<date, gregorian_calendar, date_duration>
|
|
37
|
+
{
|
|
38
|
+
public:
|
|
39
|
+
typedef gregorian_calendar::year_type year_type;
|
|
40
|
+
typedef gregorian_calendar::month_type month_type;
|
|
41
|
+
typedef gregorian_calendar::day_type day_type;
|
|
42
|
+
typedef gregorian_calendar::day_of_year_type day_of_year_type;
|
|
43
|
+
typedef gregorian_calendar::ymd_type ymd_type;
|
|
44
|
+
typedef gregorian_calendar::date_rep_type date_rep_type;
|
|
45
|
+
typedef gregorian_calendar::date_int_type date_int_type;
|
|
46
|
+
typedef date_duration duration_type;
|
|
47
|
+
#if !defined(DATE_TIME_NO_DEFAULT_CONSTRUCTOR)
|
|
48
|
+
//! Default constructor constructs with not_a_date_time
|
|
49
|
+
date():
|
|
50
|
+
date_time::date<date, gregorian_calendar, date_duration>(date_rep_type::from_special(not_a_date_time))
|
|
51
|
+
{}
|
|
52
|
+
#endif // DATE_TIME_NO_DEFAULT_CONSTRUCTOR
|
|
53
|
+
//! Main constructor with year, month, day
|
|
54
|
+
date(year_type y, month_type m, day_type d)
|
|
55
|
+
: date_time::date<date, gregorian_calendar, date_duration>(y, m, d)
|
|
56
|
+
{
|
|
57
|
+
if (gregorian_calendar::end_of_month_day(y, m) < d) {
|
|
58
|
+
throw bad_day_of_month(std::string("Day of month is not valid for year"));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//! Constructor from a ymd_type structure
|
|
62
|
+
explicit date(const ymd_type& ymd)
|
|
63
|
+
: date_time::date<date, gregorian_calendar, date_duration>(ymd)
|
|
64
|
+
{}
|
|
65
|
+
//! Needed copy constructor
|
|
66
|
+
explicit date(const date_int_type& rhs):
|
|
67
|
+
date_time::date<date,gregorian_calendar, date_duration>(rhs)
|
|
68
|
+
{}
|
|
69
|
+
//! Needed copy constructor
|
|
70
|
+
explicit date(date_rep_type rhs):
|
|
71
|
+
date_time::date<date,gregorian_calendar, date_duration>(rhs)
|
|
72
|
+
{}
|
|
73
|
+
//! Constructor for infinities, not a date, max and min date
|
|
74
|
+
explicit date(special_values sv):
|
|
75
|
+
date_time::date<date, gregorian_calendar, date_duration>(date_rep_type::from_special(sv))
|
|
76
|
+
{
|
|
77
|
+
if (sv == min_date_time)
|
|
78
|
+
{
|
|
79
|
+
*this = date(1400, 1, 1);
|
|
80
|
+
}
|
|
81
|
+
if (sv == max_date_time)
|
|
82
|
+
{
|
|
83
|
+
*this = date(9999, 12, 31);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
}
|
|
87
|
+
//!Return the Julian Day number for the date.
|
|
88
|
+
date_int_type julian_day() const
|
|
89
|
+
{
|
|
90
|
+
ymd_type ymd = year_month_day();
|
|
91
|
+
return gregorian_calendar::julian_day_number(ymd);
|
|
92
|
+
}
|
|
93
|
+
//!Return the day of year 1..365 or 1..366 (for leap year)
|
|
94
|
+
day_of_year_type day_of_year() const
|
|
95
|
+
{
|
|
96
|
+
date start_of_year(year(), 1, 1);
|
|
97
|
+
unsigned short doy = static_cast<unsigned short>((*this-start_of_year).days() + 1);
|
|
98
|
+
return day_of_year_type(doy);
|
|
99
|
+
}
|
|
100
|
+
//!Return the Modified Julian Day number for the date.
|
|
101
|
+
long modjulian_day() const
|
|
102
|
+
{
|
|
103
|
+
ymd_type ymd = year_month_day();
|
|
104
|
+
return gregorian_calendar::modjulian_day_number(ymd);
|
|
105
|
+
}
|
|
106
|
+
//!Return the iso 8601 week number 1..53
|
|
107
|
+
int week_number() const
|
|
108
|
+
{
|
|
109
|
+
ymd_type ymd = year_month_day();
|
|
110
|
+
return gregorian_calendar::week_number(ymd);
|
|
111
|
+
}
|
|
112
|
+
//! Return the day number from the calendar
|
|
113
|
+
date_int_type day_number() const
|
|
114
|
+
{
|
|
115
|
+
return days_;
|
|
116
|
+
}
|
|
117
|
+
//! Return the last day of the current month
|
|
118
|
+
date end_of_month() const
|
|
119
|
+
{
|
|
120
|
+
ymd_type ymd = year_month_day();
|
|
121
|
+
short eom_day = gregorian_calendar::end_of_month_day(ymd.year, ymd.month);
|
|
122
|
+
return date(ymd.year, ymd.month, eom_day);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
private:
|
|
126
|
+
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
} } //namespace gregorian
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
#endif
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
#ifndef GREG_DAY_HPP___
|
|
2
|
+
#define GREG_DAY_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/constrained_value.hpp"
|
|
13
|
+
#include <stdexcept>
|
|
14
|
+
#include <string>
|
|
15
|
+
|
|
16
|
+
namespace boost {
|
|
17
|
+
namespace gregorian {
|
|
18
|
+
|
|
19
|
+
//! Exception type for gregorian day of month (1..31)
|
|
20
|
+
struct bad_day_of_month : public std::out_of_range
|
|
21
|
+
{
|
|
22
|
+
bad_day_of_month() :
|
|
23
|
+
std::out_of_range(std::string("Day of month value is out of range 1..31"))
|
|
24
|
+
{}
|
|
25
|
+
//! Allow other classes to throw with unique string for bad day like Feb 29
|
|
26
|
+
bad_day_of_month(const std::string& s) :
|
|
27
|
+
std::out_of_range(s)
|
|
28
|
+
{}
|
|
29
|
+
};
|
|
30
|
+
//! Policy class that declares error handling and day of month ranges
|
|
31
|
+
typedef CV::simple_exception_policy<unsigned short, 1, 31, bad_day_of_month> greg_day_policies;
|
|
32
|
+
|
|
33
|
+
//! Generated represetation for gregorian day of month
|
|
34
|
+
typedef CV::constrained_value<greg_day_policies> greg_day_rep;
|
|
35
|
+
|
|
36
|
+
//! Represent a day of the month (range 1 - 31)
|
|
37
|
+
/*! This small class allows for simple conversion an integer value into
|
|
38
|
+
a day of the month for a standard gregorian calendar. The type
|
|
39
|
+
is automatically range checked so values outside of the range 1-31
|
|
40
|
+
will cause a bad_day_of_month exception
|
|
41
|
+
*/
|
|
42
|
+
class greg_day : public greg_day_rep {
|
|
43
|
+
public:
|
|
44
|
+
greg_day(unsigned short day_of_month) : greg_day_rep(day_of_month) {}
|
|
45
|
+
unsigned short as_number() const {return value_;}
|
|
46
|
+
operator unsigned short() const {return value_;}
|
|
47
|
+
private:
|
|
48
|
+
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
} } //namespace gregorian
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
#endif
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#ifndef GREG_DAY_OF_YEAR_HPP___
|
|
2
|
+
#define GREG_DAY_OF_YEAR_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/constrained_value.hpp"
|
|
13
|
+
#include <stdexcept>
|
|
14
|
+
#include <string>
|
|
15
|
+
|
|
16
|
+
namespace boost {
|
|
17
|
+
namespace gregorian {
|
|
18
|
+
|
|
19
|
+
//! Exception type for day of year (1..366)
|
|
20
|
+
struct bad_day_of_year : public std::out_of_range
|
|
21
|
+
{
|
|
22
|
+
bad_day_of_year() :
|
|
23
|
+
std::out_of_range(std::string("Day of year value is out of range 1..366"))
|
|
24
|
+
{}
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
//! A day of the year range (1..366)
|
|
28
|
+
typedef CV::simple_exception_policy<unsigned short,1,366,bad_day_of_year> greg_day_of_year_policies;
|
|
29
|
+
|
|
30
|
+
//! Define a range representation type for the day of the year 1..366
|
|
31
|
+
typedef CV::constrained_value<greg_day_of_year_policies> greg_day_of_year_rep;
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
} } //namespace gregorian
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
#endif
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#ifndef GREG_DURATION_HPP___
|
|
2
|
+
#define GREG_DURATION_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
|
|
5
|
+
* Use, modification and distribution is subject to the
|
|
6
|
+
* Boost Software License, Version 1.0. (See accompanying
|
|
7
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
8
|
+
* Author: Jeff Garland, Bart Garst
|
|
9
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/date_duration.hpp"
|
|
13
|
+
#if defined(BOOST_DATE_TIME_OPTIONAL_GREGORIAN_TYPES)
|
|
14
|
+
#include "boost/date_time/date_duration_types.hpp"
|
|
15
|
+
#endif
|
|
16
|
+
#include "boost/date_time/int_adapter.hpp"
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
namespace boost {
|
|
20
|
+
namespace gregorian {
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
//!An internal date representation that includes infinities, not a date
|
|
24
|
+
typedef boost::date_time::duration_traits_adapted date_duration_rep;
|
|
25
|
+
|
|
26
|
+
//! Durations in days for gregorian system
|
|
27
|
+
/*! \ingroup date_basics
|
|
28
|
+
*/
|
|
29
|
+
typedef date_time::date_duration<date_duration_rep> date_duration;
|
|
30
|
+
|
|
31
|
+
//! Shorthand for date_duration
|
|
32
|
+
typedef date_duration days;
|
|
33
|
+
|
|
34
|
+
} } //namespace gregorian
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
#endif
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
#ifndef GREG_DURATION_TYPES_HPP___
|
|
2
|
+
#define GREG_DURATION_TYPES_HPP___
|
|
3
|
+
|
|
4
|
+
/* Copyright (c) 2004 CrystalClear Software, Inc.
|
|
5
|
+
* Subject to Boost Software License, Version 1.0. (See accompanying
|
|
6
|
+
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
7
|
+
* Author: Jeff Garland, Bart Garst
|
|
8
|
+
* $Date: 2008-02-27 15:00:24 -0500 (Wed, 27 Feb 2008) $
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
#include "boost/date_time/gregorian/greg_date.hpp"
|
|
13
|
+
#include "boost/date_time/int_adapter.hpp"
|
|
14
|
+
#include "boost/date_time/adjust_functors.hpp"
|
|
15
|
+
#include "boost/date_time/date_duration.hpp"
|
|
16
|
+
#include "boost/date_time/date_duration_types.hpp"
|
|
17
|
+
|
|
18
|
+
namespace boost {
|
|
19
|
+
namespace gregorian {
|
|
20
|
+
|
|
21
|
+
//! config struct for additional duration types (ie months_duration<> & years_duration<>)
|
|
22
|
+
struct greg_durations_config {
|
|
23
|
+
typedef date date_type;
|
|
24
|
+
typedef date_time::int_adapter<int> int_rep;
|
|
25
|
+
typedef date_time::month_functor<date_type> month_adjustor_type;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
typedef date_time::months_duration<greg_durations_config> months;
|
|
29
|
+
typedef date_time::years_duration<greg_durations_config> years;
|
|
30
|
+
typedef date_time::weeks_duration<date_time::duration_traits_adapted> weeks;
|
|
31
|
+
|
|
32
|
+
}} // namespace boost::gregorian
|
|
33
|
+
|
|
34
|
+
#endif // GREG_DURATION_TYPES_HPP___
|