rhodes 3.1.1 → 3.2.0.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +5 -2
- data/doc/alert-api.txt +51 -0
- data/doc/build.txt +52 -43
- data/doc/configuration.txt +9 -5
- data/doc/connect-to-web-services.txt +4 -4
- data/doc/device-caps.txt +80 -28
- data/doc/extensions.txt +1 -1
- data/doc/install.txt +1 -1
- data/doc/introduction.txt +1 -1
- data/doc/rhodes-api.txt +62 -62
- data/doc/rhom.txt +36 -23
- data/doc/{rhodes-api/ringtonemanager-api.txt → ringtonemanager-api.txt} +0 -0
- data/doc/scanner.txt +507 -0
- data/doc/simulator.txt +6 -1
- data/doc/synchronization.txt +32 -27
- data/doc/{rhodes-api/timer-api.txt → timer-api.txt} +1 -1
- data/doc/tutorial.txt +8 -8
- data/installer/OLD-README.html +81 -0
- data/installer/README.html +6 -4
- data/installer/RHOSTUDIO-LICENSE.txt +675 -0
- data/installer/rhostudio.nsi +147 -20
- data/lib/build/compileRB/compileRB.rb +5 -2
- data/lib/build/jake.rb +3 -2
- data/lib/extensions/barcode/ext/barcode/platform/android/Rakefile +1 -1
- data/lib/extensions/barcode/ext/barcode/platform/bb/Rakefile +1 -1
- data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +391 -111
- data/lib/extensions/digest-md5/ext/Rakefile +1 -1
- data/lib/extensions/digest-sha1/ext/Rakefile +1 -1
- data/lib/extensions/digest/ext/Rakefile +1 -1
- data/lib/extensions/fcntl/ext/Rakefile +1 -1
- data/lib/extensions/mspec/mspec/expectations/expectations.rb +4 -4
- data/lib/extensions/mspec/mspec/expectations/should.rb +9 -8
- data/lib/extensions/mspec/mspec/guards.rb +3 -0
- data/lib/extensions/mspec/mspec/guards/conflict.rb +7 -2
- data/lib/extensions/mspec/mspec/guards/endian.rb +7 -10
- data/lib/extensions/mspec/mspec/guards/feature.rb +47 -0
- data/lib/extensions/mspec/mspec/guards/guard.rb +18 -13
- data/lib/extensions/mspec/mspec/guards/platform.rb +4 -0
- data/lib/extensions/mspec/mspec/guards/specified.rb +66 -0
- data/lib/extensions/mspec/mspec/guards/user.rb +17 -0
- data/lib/extensions/mspec/mspec/helpers.rb +6 -4
- data/lib/extensions/mspec/mspec/helpers/const_lookup.rb +2 -1
- data/lib/extensions/mspec/mspec/helpers/datetime.rb +30 -0
- data/lib/extensions/mspec/mspec/helpers/ducktype.rb +4 -4
- data/lib/extensions/mspec/mspec/helpers/encode.rb +21 -0
- data/lib/extensions/mspec/mspec/helpers/environment.rb +13 -9
- data/lib/extensions/mspec/mspec/helpers/fixture.rb +2 -1
- data/lib/extensions/mspec/mspec/helpers/flunk.rb +1 -1
- data/lib/extensions/mspec/mspec/helpers/fmode.rb +15 -0
- data/lib/extensions/mspec/mspec/helpers/io.rb +21 -2
- data/lib/extensions/mspec/mspec/helpers/language_version.rb +13 -3
- data/lib/extensions/mspec/mspec/helpers/numeric.rb +89 -0
- data/lib/extensions/mspec/mspec/helpers/ruby_exe.rb +138 -123
- data/lib/extensions/mspec/mspec/helpers/singleton_class.rb +7 -0
- data/lib/extensions/mspec/mspec/helpers/stasy.rb +33 -0
- data/lib/extensions/mspec/mspec/helpers/tmp.rb +34 -26
- data/lib/extensions/mspec/mspec/matchers.rb +9 -0
- data/lib/extensions/mspec/mspec/matchers/base.rb +14 -14
- data/lib/extensions/mspec/mspec/matchers/be_computed_by.rb +36 -0
- data/lib/extensions/mspec/mspec/matchers/be_computed_by_function.rb +35 -0
- data/lib/extensions/mspec/mspec/matchers/be_valid_dns_name.rb +24 -0
- data/lib/extensions/mspec/mspec/matchers/equal_utf16.rb +5 -7
- data/lib/extensions/mspec/mspec/matchers/have_class_variable.rb +12 -0
- data/lib/extensions/mspec/mspec/matchers/have_constant.rb +6 -24
- data/lib/extensions/mspec/mspec/matchers/have_data.rb +49 -0
- data/lib/extensions/mspec/mspec/matchers/have_instance_method.rb +1 -1
- data/lib/extensions/mspec/mspec/matchers/have_instance_variable.rb +12 -0
- data/lib/extensions/mspec/mspec/matchers/have_method.rb +1 -1
- data/lib/extensions/mspec/mspec/matchers/have_private_instance_method.rb +1 -1
- data/lib/extensions/mspec/mspec/matchers/have_private_method.rb +24 -0
- data/lib/extensions/mspec/mspec/matchers/have_protected_instance_method.rb +24 -0
- data/lib/extensions/mspec/mspec/matchers/have_public_instance_method.rb +1 -1
- data/lib/extensions/mspec/mspec/matchers/have_singleton_method.rb +24 -0
- data/lib/extensions/mspec/mspec/matchers/output_to_fd.rb +71 -71
- data/lib/extensions/mspec/mspec/matchers/raise_error.rb +4 -3
- data/lib/extensions/mspec/mspec/matchers/stringsymboladapter.rb +1 -1
- data/lib/extensions/mspec/mspec/matchers/variable.rb +28 -0
- data/lib/extensions/mspec/mspec/mocks/mock.rb +102 -60
- data/lib/extensions/mspec/mspec/mocks/object.rb +5 -1
- data/lib/extensions/mspec/mspec/mocks/proxy.rb +41 -6
- data/lib/extensions/mspec/mspec/runner.rb +1 -0
- data/lib/extensions/mspec/mspec/runner/actions/debug.rb +2 -0
- data/lib/extensions/mspec/mspec/runner/context.rb +58 -13
- data/lib/extensions/mspec/mspec/runner/exception.rb +7 -6
- data/lib/extensions/mspec/mspec/runner/formatters.rb +1 -0
- data/lib/extensions/mspec/mspec/runner/formatters/dotted.rb +15 -3
- data/lib/extensions/mspec/mspec/runner/formatters/profile.rb +70 -0
- data/lib/extensions/mspec/mspec/runner/mspec.rb +32 -19
- data/lib/extensions/mspec/mspec/runner/object.rb +4 -0
- data/lib/extensions/mspec/mspec/runner/shared.rb +1 -1
- data/lib/extensions/mspec/mspec/utils/name_map.rb +8 -1
- data/lib/extensions/mspec/mspec/utils/options.rb +25 -8
- data/lib/extensions/mspec/mspec/utils/ruby_name.rb +1 -1
- data/lib/extensions/mspec/mspec/utils/script.rb +4 -4
- data/lib/extensions/mspec/mspec/version.rb +1 -1
- data/lib/extensions/nfc/ext/nfc/platform/android/Rakefile +1 -1
- data/lib/extensions/nfc/ext/nfc/shared/ruby/nfc_wrap.c +427 -149
- data/lib/extensions/set/tsort.rb +242 -0
- data/lib/extensions/thread/monitor.rb +277 -0
- data/lib/extensions/thread/thread.rb +357 -0
- data/lib/framework/base64.rb +4 -4
- data/lib/framework/date/format.rb +36 -64
- data/lib/framework/dateOrig.rb +40 -23
- data/lib/framework/ostruct.rb +14 -8
- data/lib/framework/rational.rb +2 -2
- data/lib/framework/rbconfig.rb +71 -0
- data/lib/framework/rho/rho.rb +46 -43
- data/lib/framework/rho/rhocontact.rb +60 -36
- data/lib/framework/rho/rhofsconnector.rb +2 -2
- data/lib/framework/rho/rhoutils.rb +10 -6
- data/lib/framework/rhodes.rb +1 -1
- data/lib/framework/rhoframework.rb +0 -13
- data/lib/framework/rhom/rhom.rb +64 -1
- data/lib/framework/rhom/rhom_object_factory.rb +4 -4
- data/lib/framework/rhosystem.rb +27 -25
- data/lib/framework/time.rb +48 -16
- data/lib/framework/version.rb +1 -1
- data/lib/rhodes.rb +1 -1
- data/lib/test/framework_test.rb +1 -1
- data/platform/android/Rhodes/AndroidManifest.xml +35 -9
- data/platform/android/Rhodes/default.properties +1 -1
- data/platform/android/Rhodes/jni/Android.mk +5 -4
- data/platform/android/Rhodes/jni/include/rhodes.h +65 -3
- data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +3 -1
- data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_geolocation_GeoLocationImpl.h +12 -2
- data/platform/android/Rhodes/jni/src/callbacks.cpp +6 -2
- data/platform/android/Rhodes/jni/src/event.cpp +60 -1
- data/platform/android/Rhodes/jni/src/geolocation.cpp +42 -13
- data/platform/android/Rhodes/jni/src/mapview.cpp +169 -42
- data/platform/android/Rhodes/jni/src/phonebook.cpp +90 -74
- data/platform/android/Rhodes/jni/src/rhodes.cpp +91 -3
- data/platform/android/Rhodes/jni/src/rhodesapp.cpp +1 -1
- data/platform/android/Rhodes/res/drawable/callout_a1.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_a2.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_a3.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_b1.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_b2.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_b3.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_c1.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_c2.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_c3.png +0 -0
- data/platform/android/Rhodes/res/drawable/callout_d.png +0 -0
- data/platform/android/Rhodes/res/drawable/google.png +0 -0
- data/platform/android/Rhodes/res/drawable/location.png +0 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java +12 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +44 -21
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +12 -25
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/alert/PopupActivity.java +2 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothDeviceListActivity.java +2 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraSettings.java +11 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +13 -3
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/Event.java +7 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/EventStore.java +127 -37
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +69 -23
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +287 -124
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Annotation.java +6 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/AnnotationsOverlay.java +57 -6
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Callout.java +296 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/CalloutOverlay.java +143 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/GoogleMapView.java +109 -3
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +53 -5
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Contact.java +16 -119
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessor.java +4 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorNew.java +284 -120
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorOld.java +58 -23
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Phonebook.java +42 -77
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/util/PerformOnUiThread.java +1 -1
- data/platform/android/build/RhodesSRC_build.files +2 -0
- data/platform/android/build/android.rake +90 -40
- data/platform/android/build/android_tools.rb +16 -0
- data/platform/android/build/androidcommon.rb +2 -0
- data/platform/android/build/librhocommon_build.files +3 -0
- data/platform/android/build/libruby_build.files +2 -1
- data/platform/bb/RubyVM/src/com/rho/net/AsyncHttp.java +6 -2
- data/platform/bb/RubyVM/src/com/rho/sync/ClientRegister.java +3 -2
- data/platform/bb/RubyVM/src/com/rho/sync/SyncEngine.java +17 -24
- data/platform/bb/RubyVM/src/com/rho/sync/SyncNotify.java +26 -2
- data/platform/bb/RubyVM/src/com/rho/sync/SyncProtocol_3.java +6 -1
- data/platform/bb/RubyVM/src/com/rho/sync/SyncSource.java +4 -0
- data/platform/bb/RubyVM/src/com/rho/sync/SyncThread.java +50 -54
- data/platform/bb/build/bb.rake +4 -4
- data/platform/bb/rhodes/src/com/rho/rubyext/RhoPhonebook.java +6 -6
- data/platform/bb/rhodes/src/rhomobile/camera/Camera.java +7 -0
- data/platform/bb/rhodes/src/rhomobile/mapview/MapView.java +10 -0
- data/platform/iphone/Classes/AppManager/AppManager.m +29 -0
- data/platform/iphone/Classes/Dispatcher/Dispatcher.c +1 -1
- data/platform/iphone/Classes/GeoLocation/LocationController.h +2 -1
- data/platform/iphone/Classes/GeoLocation/LocationController.m +23 -0
- data/platform/iphone/Classes/MapView/MapAnnotation.h +6 -0
- data/platform/iphone/Classes/MapView/MapAnnotation.m +5 -1
- data/platform/iphone/Classes/MapView/MapViewController.m +48 -4
- data/platform/iphone/Classes/MapView/MapViewManager.m +7 -0
- data/platform/iphone/Classes/Phonebook/phonebook.m +44 -0
- data/platform/iphone/Classes/Rhodes.m +1 -1
- data/platform/iphone/Info.plist +1 -1
- data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +3 -3
- data/platform/iphone/curl/curl.xcodeproj/project.pbxproj +3 -3
- data/platform/iphone/rbuild/iphone.rake +3 -1
- data/platform/iphone/rhoextlib/rhoextlib.xcodeproj/project.pbxproj +3 -3
- data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +18 -7
- data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +3 -2
- data/platform/iphone/rhosynclib/rhosynclib.xcodeproj/project.pbxproj +3 -3
- data/platform/linux/files.txt +2 -2
- data/platform/linux/target/compiler/rubylinux +0 -0
- data/platform/mac/RubyMac/RubyMac.xcodeproj/project.pbxproj +8 -2
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
- data/platform/osx/build/osx.rake +1 -3
- data/platform/shared/RhoConnectClient/RhoConnectClient.cpp +65 -26
- data/platform/shared/RhoConnectClient/RhoConnectClient.h +5 -1
- data/platform/shared/common/Android.mk +3 -0
- data/platform/shared/common/AppMenu.cpp +2 -2
- data/platform/shared/common/RhoPort.h +2 -2
- data/platform/shared/common/RhodesApp.cpp +20 -2
- data/platform/shared/common/RhodesApp.h +1 -0
- data/platform/shared/common/ThreadQueue.cpp +5 -0
- data/platform/shared/common/ThreadQueue.h +1 -0
- data/platform/shared/common/map/BaseMapEngine.cpp +1393 -0
- data/platform/shared/common/map/BaseMapEngine.h +368 -0
- data/platform/shared/common/map/ESRIMapEngine.cpp +23 -896
- data/platform/shared/common/map/ESRIMapEngine.h +11 -243
- data/platform/shared/common/map/GeocodingMapEngine.cpp +200 -0
- data/platform/shared/common/map/GeocodingMapEngine.h +86 -0
- data/platform/shared/common/map/GoogleMapEngine.cpp +70 -135
- data/platform/shared/common/map/GoogleMapEngine.h +21 -38
- data/platform/shared/common/map/MapEngine.cpp +145 -24
- data/platform/shared/common/map/MapEngine.h +156 -54
- data/platform/shared/common/map/OSMMapEngine.cpp +94 -0
- data/platform/shared/common/map/OSMMapEngine.h +65 -0
- data/platform/shared/curl/lib/config-symbian.h +3 -1
- data/platform/shared/db/DBAdapter.cpp +30 -4
- data/platform/shared/db/DBAdapter.h +24 -1
- data/platform/shared/logging/RhoLog.h +26 -0
- data/platform/shared/net/AsyncHttp.cpp +6 -2
- data/platform/shared/net/CompatWince.cpp +1 -0
- data/platform/shared/net/HttpServer.cpp +5 -2
- data/platform/shared/qt/rhodes/RhoSimulator.h +1 -1
- data/platform/shared/qt/rhodes/impl/GeoLocationImpl.cpp +6 -0
- data/platform/shared/qt/rhodes/impl/MapViewImpl.cpp +4 -0
- data/platform/shared/qt/rhodes/impl/PhonebookImpl.cpp +12 -0
- data/platform/shared/qt/rhodes/impl/SystemImpl.cpp +26 -0
- data/platform/shared/qt/rholib/rholib.pro +14 -19
- data/platform/shared/qt/rubylib/rubylib.pro +7 -4
- data/platform/shared/ruby/Android.mk +3 -2
- data/platform/shared/ruby/GPL +340 -0
- data/platform/shared/ruby/android/ruby/config.h +283 -0
- data/platform/shared/ruby/array.c +1318 -595
- data/platform/shared/ruby/bignum.c +1092 -278
- data/platform/shared/ruby/class.c +689 -201
- data/platform/shared/ruby/compar.c +22 -20
- data/platform/shared/ruby/compile.c +327 -249
- data/platform/shared/ruby/complex.c +593 -138
- data/platform/shared/ruby/cont.c +213 -95
- data/platform/shared/ruby/debug.c +15 -10
- data/platform/shared/ruby/debug.h +1 -1
- data/platform/shared/ruby/dir.c +247 -104
- data/platform/shared/ruby/dln.c +102 -309
- data/platform/shared/ruby/dln.h +3 -3
- data/platform/shared/ruby/dln_find.c +305 -0
- data/platform/shared/ruby/dmydln.c +7 -2
- data/platform/shared/ruby/dmyversion.c +2 -0
- data/platform/shared/ruby/enc/Makefile.in +1 -0
- data/platform/shared/ruby/enc/big5.c +142 -5
- data/platform/shared/ruby/enc/depend +1 -0
- data/platform/shared/ruby/enc/emacs_mule.c +1 -1
- data/platform/shared/ruby/enc/encdb.c +3 -1
- data/platform/shared/ruby/enc/euc_tw.c +1 -10
- data/platform/shared/ruby/enc/iso_2022_jp.h +36 -0
- data/platform/shared/ruby/enc/iso_8859_5.c +1 -1
- data/platform/shared/ruby/enc/koi8_r.c +1 -1
- data/platform/shared/ruby/enc/koi8_u.c +1 -1
- data/platform/shared/ruby/enc/prelude.rb +1 -1
- data/platform/shared/ruby/enc/shift_jis.c +3 -3
- data/platform/shared/ruby/enc/trans/big5-hkscs-tbl.rb +18385 -0
- data/platform/shared/ruby/enc/trans/big5-uao-tbl.rb +19784 -0
- data/platform/shared/ruby/enc/trans/big5.c +53810 -12566
- data/platform/shared/ruby/enc/trans/big5.trans +10 -1
- data/platform/shared/ruby/enc/trans/chinese.c +113 -71
- data/platform/shared/ruby/enc/trans/chinese.trans +6 -4
- data/platform/shared/ruby/enc/trans/escape.c +3 -3
- data/platform/shared/ruby/enc/trans/escape.trans +3 -3
- data/platform/shared/ruby/enc/trans/gb18030-tbl.rb +32 -0
- data/platform/shared/ruby/enc/trans/gb18030.c +17431 -91305
- data/platform/shared/ruby/enc/trans/gb18030.trans +105 -5
- data/platform/shared/ruby/enc/trans/gbk.c +13 -13
- data/platform/shared/ruby/enc/trans/iso2022.c +374 -13
- data/platform/shared/ruby/enc/trans/iso2022.trans +313 -0
- data/platform/shared/ruby/enc/trans/japanese.c +26 -24
- data/platform/shared/ruby/enc/trans/japanese_euc.c +30 -30
- data/platform/shared/ruby/enc/trans/japanese_sjis.c +282 -276
- data/platform/shared/ruby/enc/trans/korean.c +182 -159
- data/platform/shared/ruby/enc/trans/newline.c +18 -14
- data/platform/shared/ruby/enc/trans/newline.trans +15 -11
- data/platform/shared/ruby/enc/trans/single_byte.c +497 -394
- data/platform/shared/ruby/enc/trans/single_byte.trans +1 -2
- data/platform/shared/ruby/enc/trans/transdb.c +1 -1
- data/platform/shared/ruby/enc/trans/utf8_mac-tbl.rb +945 -0
- data/platform/shared/ruby/enc/trans/utf8_mac.c +10853 -0
- data/platform/shared/ruby/enc/trans/utf8_mac.trans +242 -0
- data/platform/shared/ruby/enc/trans/utf_16_32.c +89 -86
- data/platform/shared/ruby/enc/unicode.c +30 -8779
- data/platform/shared/ruby/enc/unicode/name2ctype.h +17985 -0
- data/platform/shared/ruby/enc/unicode/name2ctype.h.blt +17985 -0
- data/platform/shared/ruby/enc/unicode/name2ctype.kwd +16711 -0
- data/platform/shared/ruby/enc/unicode/name2ctype.src +16711 -0
- data/platform/shared/ruby/enc/utf_16be.c +3 -4
- data/platform/shared/ruby/enc/utf_16le.c +3 -4
- data/platform/shared/ruby/enc/utf_8.c +3 -1
- data/platform/shared/ruby/enc/x_emoji.h +26 -0
- data/platform/shared/ruby/encdb.h +18 -2
- data/platform/shared/ruby/encoding.c +248 -111
- data/platform/shared/ruby/enum.c +1006 -200
- data/platform/shared/ruby/enumerator.c +555 -254
- data/platform/shared/ruby/error.c +478 -79
- data/platform/shared/ruby/eval.c +186 -94
- data/platform/shared/ruby/eval_error.c +16 -10
- data/platform/shared/ruby/eval_intern.h +24 -9
- data/platform/shared/ruby/eval_jump.c +2 -1
- data/platform/shared/ruby/ext/geolocation/geolocation.i +10 -1
- data/platform/shared/ruby/ext/geolocation/geolocation_wrap.c +49 -6
- data/platform/shared/ruby/ext/mapview/mapview.i +6 -0
- data/platform/shared/ruby/ext/mapview/mapview_wrap.c +279 -0
- data/platform/shared/ruby/ext/nativebar/nativebar_wrap.c +402 -124
- data/platform/shared/ruby/ext/phonebook/phonebook.i +41 -7
- data/platform/shared/ruby/ext/phonebook/phonebook_wrap.c +216 -47
- data/platform/shared/ruby/ext/rho/rhoruby.c +9 -5
- data/platform/shared/ruby/ext/rho/rhosupport.c +1 -1
- data/platform/shared/ruby/ext/socket/getaddrinfo.c +4 -0
- data/platform/shared/ruby/ext/sqlite3_api/sqlite3_api_wrap.c +2 -2
- data/platform/shared/ruby/ext/syncengine/syncengine.i +14 -5
- data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +55 -7
- data/platform/shared/ruby/ext/system/system.i +7 -2
- data/platform/shared/ruby/ext/system/system_wrap.c +28 -2
- data/platform/shared/ruby/file.c +1243 -683
- data/platform/shared/ruby/gc.c +509 -217
- data/platform/shared/ruby/gc.h +7 -5
- data/platform/shared/ruby/generated/insns.inc +11 -9
- data/platform/shared/ruby/generated/insns_info.inc +69 -62
- data/platform/shared/ruby/generated/known_errors.inc +360 -245
- data/platform/shared/ruby/generated/lex.c +49 -47
- data/platform/shared/ruby/generated/node_name.inc +0 -8
- data/platform/shared/ruby/generated/optinsn.inc +1 -1
- data/platform/shared/ruby/generated/parse.c +4480 -4162
- data/platform/shared/ruby/generated/parse.h +13 -14
- data/platform/shared/ruby/generated/vm.inc +485 -269
- data/platform/shared/ruby/generated/vmtc.inc +2 -1
- data/platform/shared/ruby/golf_prelude.c +21 -4
- data/platform/shared/ruby/goruby.c +1 -1
- data/platform/shared/ruby/hash.c +429 -180
- data/platform/shared/ruby/ia64.s +42 -0
- data/platform/shared/ruby/id.c +13 -14
- data/platform/shared/ruby/id.h +25 -18
- data/platform/shared/ruby/include/ruby.h +1 -1
- data/platform/shared/ruby/include/ruby/backward/rubysig.h +2 -2
- data/platform/shared/ruby/include/ruby/defines.h +50 -29
- data/platform/shared/ruby/include/ruby/encoding.h +40 -14
- data/platform/shared/ruby/include/ruby/intern.h +81 -24
- data/platform/shared/ruby/include/ruby/io.h +4 -4
- data/platform/shared/ruby/include/ruby/missing.h +28 -18
- data/platform/shared/ruby/include/ruby/oniguruma.h +22 -7
- data/platform/shared/ruby/include/ruby/re.h +4 -4
- data/platform/shared/ruby/include/ruby/ruby.h +294 -76
- data/platform/shared/ruby/include/ruby/st.h +27 -9
- data/platform/shared/ruby/include/ruby/util.h +14 -6
- data/platform/shared/ruby/include/ruby/version.h +61 -0
- data/platform/shared/ruby/include/ruby/vm.h +21 -1
- data/platform/shared/ruby/include/ruby/win32.h +223 -63
- data/platform/shared/ruby/inits.c +1 -1
- data/platform/shared/ruby/insns.def +236 -111
- data/platform/shared/ruby/io.c +2188 -774
- data/platform/shared/ruby/iphone/ruby/config.h +75 -45
- data/platform/shared/ruby/iseq.c +261 -104
- data/platform/shared/ruby/iseq.h +13 -11
- data/platform/shared/ruby/linux/ruby/config.h +95 -100
- data/platform/shared/ruby/load.c +115 -81
- data/platform/shared/ruby/main.c +122 -0
- data/platform/shared/ruby/marshal.c +418 -230
- data/platform/shared/ruby/math.c +219 -152
- data/platform/shared/ruby/method.h +103 -0
- data/platform/shared/ruby/miniprelude.c +35 -23
- data/platform/shared/ruby/missing/acosh.c +4 -4
- data/platform/shared/ruby/missing/alloca.c +4 -1
- data/platform/shared/ruby/missing/close.c +67 -0
- data/platform/shared/ruby/missing/crypt.c +9 -9
- data/platform/shared/ruby/missing/dup2.c +0 -1
- data/platform/shared/ruby/missing/langinfo.c +4 -3
- data/platform/shared/ruby/missing/signbit.c +19 -0
- data/platform/shared/ruby/newline.c +18 -14
- data/platform/shared/ruby/node.c +921 -0
- data/platform/shared/ruby/node.h +14 -47
- data/platform/shared/ruby/numeric.c +544 -302
- data/platform/shared/ruby/object.c +430 -426
- data/platform/shared/ruby/pack.c +677 -628
- data/platform/shared/ruby/parse.y +847 -523
- data/platform/shared/ruby/proc.c +631 -341
- data/platform/shared/ruby/process.c +811 -421
- data/platform/shared/ruby/random.c +858 -177
- data/platform/shared/ruby/range.c +234 -133
- data/platform/shared/ruby/rational.c +936 -173
- data/platform/shared/ruby/re.c +351 -192
- data/platform/shared/ruby/regcomp.c +125 -138
- data/platform/shared/ruby/regenc.c +26 -25
- data/platform/shared/ruby/regenc.h +7 -3
- data/platform/shared/ruby/regerror.c +44 -34
- data/platform/shared/ruby/regexec.c +31 -38
- data/platform/shared/ruby/regint.h +16 -17
- data/platform/shared/ruby/regparse.c +266 -136
- data/platform/shared/ruby/regparse.h +4 -1
- data/platform/shared/ruby/regsyntax.c +2 -2
- data/platform/shared/ruby/revision.h +0 -1
- data/platform/shared/ruby/ruby.c +276 -248
- data/platform/shared/ruby/safe.c +14 -8
- data/platform/shared/ruby/signal.c +61 -68
- data/platform/shared/ruby/sprintf.c +77 -38
- data/platform/shared/ruby/st.c +437 -61
- data/platform/shared/ruby/strftime.c +252 -110
- data/platform/shared/ruby/string.c +1361 -1009
- data/platform/shared/ruby/struct.c +200 -133
- data/platform/shared/ruby/symbian/ruby/config.h +56 -24
- data/platform/shared/ruby/thread.c +732 -247
- data/platform/shared/ruby/thread_pthread.c +122 -69
- data/platform/shared/ruby/thread_pthread.h +4 -1
- data/platform/shared/ruby/thread_win32.c +73 -41
- data/platform/shared/ruby/thread_win32.h +1 -1
- data/platform/shared/ruby/time.c +3271 -919
- data/platform/shared/ruby/timev.h +21 -0
- data/platform/shared/ruby/transcode.c +289 -95
- data/platform/shared/ruby/transcode_data.h +17 -14
- data/platform/shared/ruby/transdb.h +32 -0
- data/platform/shared/ruby/util.c +330 -123
- data/platform/shared/ruby/variable.c +294 -176
- data/platform/shared/ruby/version.c +71 -2
- data/platform/shared/ruby/version.h +22 -19
- data/platform/shared/ruby/vm.c +368 -203
- data/platform/shared/ruby/vm_core.h +110 -66
- data/platform/shared/ruby/vm_dump.c +51 -44
- data/platform/shared/ruby/vm_eval.c +547 -230
- data/platform/shared/ruby/vm_exec.c +3 -3
- data/platform/shared/ruby/vm_insnhelper.c +397 -200
- data/platform/shared/ruby/vm_insnhelper.h +27 -14
- data/platform/shared/ruby/vm_method.c +493 -296
- data/platform/shared/ruby/vm_opts.h +1 -1
- data/platform/shared/ruby/{missing/vsnprintf.c → vsnprintf.c} +114 -74
- data/platform/shared/ruby/win32/dir.h +5 -4
- data/platform/shared/ruby/win32/miniprelude.c +34 -21
- data/platform/shared/ruby/win32/newline.c +18 -14
- data/platform/shared/ruby/win32/ruby/config.h +58 -20
- data/platform/shared/ruby/win32/win32.c +1398 -475
- data/platform/shared/ruby/wince/direct.c +17 -1
- data/platform/shared/ruby/wince/io_wce.c +16 -8
- data/platform/shared/ruby/wince/ruby/config.h +54 -24
- data/platform/shared/ruby/wince/sys/stat.c +81 -0
- data/platform/shared/ruby/wince/time_wce.c +47 -4
- data/platform/shared/ruby/wince/wince.h +16 -0
- data/platform/shared/rubyext/Android.mk +1 -1
- data/platform/shared/rubyext/GeoLocation.cpp +93 -48
- data/platform/shared/rubyext/GeoLocation.h +9 -4
- data/platform/shared/rubyext/System.cpp +6 -0
- data/platform/shared/sync/ClientRegister.cpp +1 -1
- data/platform/shared/sync/SyncEngine.cpp +15 -55
- data/platform/shared/sync/SyncEngine.h +4 -4
- data/platform/shared/sync/SyncProtocol_3.h +6 -1
- data/platform/shared/sync/SyncSource.cpp +6 -1
- data/platform/shared/sync/SyncSource.h +1 -0
- data/platform/shared/sync/SyncThread.cpp +20 -9
- data/platform/shared/sync/SyncThread.h +14 -9
- data/platform/shared/wtl80/include/atlapp.h +2 -0
- data/platform/symbian/build/symbian.rake +56 -5
- data/platform/symbian/curl/curl.pro +4 -0
- data/platform/symbian/rhodes/rhodes.pro +16 -4
- data/platform/symbian/rhodes/src/phonebook/ruby_phonebook.cpp +10 -0
- data/platform/symbian/rholib/rholib.pro +4 -0
- data/platform/symbian/rubylib/rubylib.pro +6 -2
- data/platform/symbian/sqlite3/sqlite3.pro +2 -1
- data/platform/symbian/syncengine/syncengine.pro +4 -0
- data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
- data/platform/wm/RhoLib/RhoLib.vcproj +333 -0
- data/platform/wm/build/build_inf.js +1 -0
- data/platform/wm/build/wm.rake +43 -17
- data/platform/wm/rhodes.sln +140 -76
- data/platform/wm/rhodes/Alert.cpp +1 -1
- data/platform/wm/rhodes/IBrowserEngine.cpp +10 -0
- data/platform/wm/rhodes/IBrowserEngine.h +24 -0
- data/platform/wm/rhodes/IEBrowserEngine.cpp +179 -0
- data/platform/wm/rhodes/IEBrowserEngine.h +36 -0
- data/platform/wm/rhodes/MainWindow.cpp +176 -178
- data/platform/wm/rhodes/MainWindow.h +78 -20
- data/platform/wm/rhodes/MapView/Graphics.h +10 -0
- data/platform/wm/rhodes/MapView/MapViewManager.cpp +7 -0
- data/platform/wm/rhodes/OutlookApp.cpp +3 -3
- data/platform/wm/rhodes/RhoWebKitBrowser.cpp +10 -0
- data/platform/wm/rhodes/Rhodes.cpp +499 -443
- data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +1 -4
- data/platform/wm/rhodes/bluetooth/Bluetooth.h +1 -1
- data/platform/wm/rhodes/camera/Camera.cpp +3 -6
- data/platform/wm/rhodes/phonebook/phonebook.cpp +20 -11
- data/platform/wm/rhodes/phonebook/phonebook.h +4 -2
- data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +3 -3
- data/platform/wm/rhodes/rho/rubyext/GeoLocationImpl.cpp +12 -7
- data/platform/wm/rhodes/rho/rubyext/GeoLocationImpl.h +1 -1
- data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +24 -6
- data/platform/wm/rhodes/rho/rubyext/WebView.cpp +0 -32
- data/platform/wm/rhodes/rho/rubyext/calendar.cpp +1 -1
- data/platform/wm/rhodes/rhodes.vcproj +1792 -129
- data/platform/wm/rhodes/rhoelements/RhoWKBrowserEngine.cpp +384 -0
- data/platform/wm/rhodes/rhoelements/RhoWKBrowserEngine.h +41 -0
- data/platform/wm/rhodes/signature/Signature.cpp +4 -8
- data/platform/wm/rhodes/signature/Signature.h +1 -1
- data/platform/wm/rhodes/simulator/MainWindowQt.cpp +1 -0
- data/platform/wm/rhodes/simulator/MainWindowQt.h +2 -0
- data/platform/wm/rhodes/stdafx.h +17 -5
- data/platform/wm/rhoelements.sln +447 -0
- data/platform/wm/rubylib/rubylib.vcproj +355 -10
- data/platform/wm/sqlite3/sqlite3.vcproj +305 -0
- data/platform/wm/syncengine/syncengine.vcproj +309 -0
- data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.Libraries.dll +0 -0
- data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.dll +0 -0
- data/platform/wp7/RhoAppRunner/Program.cs +2 -2
- data/platform/wp7/RhoRubyExtGen/RhoCamera.cs +59 -0
- data/platform/wp7/RhoRubyExtGen/RhoNativeBar.cs +3 -20
- data/platform/wp7/RhoRubyExtGen/RhoRubyExtGen.csproj +1 -0
- data/platform/wp7/RhoRubyLib/Initializers.Generated.cs +6 -9
- data/platform/wp7/RhoRubyLib/RhoRubyLib.csproj +2 -1
- data/platform/wp7/RhoRubyLib/rubyext/RhoCamera.cs +130 -0
- data/platform/wp7/RhoRubyLib/rubyext/RhoNativeBar.cs +5 -73
- data/res/build-tools/RhoRuby.exe +0 -0
- data/res/build-tools/RubyMac +0 -0
- data/res/build-tools/detool.exe +0 -0
- data/res/build-tools/rubylinux +0 -0
- data/res/generators/rhogen.rb +5 -0
- data/res/generators/templates/application/app/helpers/browser_helper.rb +4 -0
- data/res/generators/templates/application/app/index.erb +6 -2
- data/res/generators/templates/application/app/layout.erb +8 -5
- data/res/generators/templates/application/build.yml +3 -1
- data/res/generators/templates/application/gitignore +7 -0
- data/res/generators/templates/application/public/css/android.css +366 -5
- data/res/generators/templates/application/public/css/blackberry.css +16 -5
- data/res/generators/templates/application/public/css/iphone.css +349 -5
- data/res/generators/templates/application/public/css/windows_mobile.css +105 -0
- data/res/generators/templates/application/public/jqmobile/{jquery.mobile-1.0b2.css → jquery.mobile-1.0b3.css} +64 -5
- data/res/generators/templates/application/public/jqmobile/{jquery.mobile-1.0b2.js → jquery.mobile-1.0b3.js} +1125 -727
- data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0b3.min.css +8 -0
- data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0b3.min.js +169 -0
- data/res/generators/templates/application/public/jquery/{jquery-1.6.2.js → jquery-1.6.3.js} +226 -163
- data/res/generators/templates/application/public/jquery/jquery-1.6.3.min.js +4 -0
- data/res/generators/templates/application/public/js/wp7.js +5 -0
- data/res/generators/templates/model/edit.erb +6 -2
- data/res/generators/templates/model/index.erb +8 -4
- data/res/generators/templates/model/new.erb +3 -1
- data/res/generators/templates/model/show.erb +6 -2
- data/rhobuild.yml.example +0 -1
- data/rhodes.gemspec +1 -1
- data/spec/framework_spec/app/spec/core/argf/argf_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/argf/binmode_spec.rb +19 -7
- data/spec/framework_spec/app/spec/core/argf/bytes_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/chars_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/close_spec.rb +31 -5
- data/spec/framework_spec/app/spec/core/argf/closed_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/argf/each_byte_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/each_char_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/each_line_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/each_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/eof_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/file_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/argf/filename_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/fileno_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/getc_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/argf/gets_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/argf/lineno_spec.rb +24 -18
- data/spec/framework_spec/app/spec/core/argf/path_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/pos_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/argf/read_spec.rb +19 -20
- data/spec/framework_spec/app/spec/core/argf/readchar_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/argf/readline_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/argf/readlines_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/rewind_spec.rb +18 -4
- data/spec/framework_spec/app/spec/core/argf/seek_spec.rb +6 -4
- data/spec/framework_spec/app/spec/core/argf/shared/each_byte.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/each_char.rb +4 -4
- data/spec/framework_spec/app/spec/core/argf/shared/each_line.rb +9 -3
- data/spec/framework_spec/app/spec/core/argf/shared/eof.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/filename.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/fileno.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/getc.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/gets.rb +41 -43
- data/spec/framework_spec/app/spec/core/argf/shared/pos.rb +3 -3
- data/spec/framework_spec/app/spec/core/argf/shared/readlines.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/skip_spec.rb +12 -4
- data/spec/framework_spec/app/spec/core/argf/tell_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/to_a_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/to_i_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/argf/to_io_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/argf/to_s_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/array/allocate_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/append_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/array_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/array/assoc_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/array/at_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/array/choice_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/clear_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/clone_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/collect_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/combination_spec.rb +38 -13
- data/spec/framework_spec/app/spec/core/array/compact_spec.rb +33 -11
- data/spec/framework_spec/app/spec/core/array/comparison_spec.rb +11 -5
- data/spec/framework_spec/app/spec/core/array/concat_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/array/constructor_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/array/count_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/cycle_spec.rb +82 -14
- data/spec/framework_spec/app/spec/core/array/delete_at_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/delete_if_spec.rb +16 -7
- data/spec/framework_spec/app/spec/core/array/delete_spec.rb +8 -2
- data/spec/framework_spec/app/spec/core/array/drop_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/drop_while_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/dup_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/each_index_spec.rb +29 -30
- data/spec/framework_spec/app/spec/core/array/each_spec.rb +8 -33
- data/spec/framework_spec/app/spec/core/array/element_reference_spec.rb +30 -6
- data/spec/framework_spec/app/spec/core/array/element_set_spec.rb +19 -2
- data/spec/framework_spec/app/spec/core/array/empty_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/eql_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/equal_value_spec.rb +34 -3
- data/spec/framework_spec/app/spec/core/array/fetch_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/array/fill_spec.rb +27 -12
- data/spec/framework_spec/app/spec/core/array/find_index_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/first_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/array/fixtures/classes.rb +447 -6
- data/spec/framework_spec/app/spec/core/array/flatten_spec.rb +42 -19
- data/spec/framework_spec/app/spec/core/array/frozen_spec.rb +17 -15
- data/spec/framework_spec/app/spec/core/array/hash_spec.rb +22 -3
- data/spec/framework_spec/app/spec/core/array/include_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/index_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/array/indexes_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/indices_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/initialize_copy_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/initialize_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/insert_spec.rb +13 -11
- data/spec/framework_spec/app/spec/core/array/inspect_spec.rb +33 -3
- data/spec/framework_spec/app/spec/core/array/intersection_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/array/join_spec.rb +24 -4
- data/spec/framework_spec/app/spec/core/array/keep_if_spec.rb +12 -0
- data/spec/framework_spec/app/spec/core/array/last_spec.rb +11 -11
- data/spec/framework_spec/app/spec/core/array/length_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/map_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/minus_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/array/multiply_spec.rb +23 -10
- data/spec/framework_spec/app/spec/core/array/new_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/array/nitems_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/pack/a_spec.rb +59 -0
- data/spec/framework_spec/app/spec/core/array/pack/at_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/array/pack/b_spec.rb +109 -0
- data/spec/framework_spec/app/spec/core/array/pack/c_spec.rb +83 -0
- data/spec/framework_spec/app/spec/core/array/pack/comment_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/array/pack/d_spec.rb +39 -0
- data/spec/framework_spec/app/spec/core/array/pack/e_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/array/pack/f_spec.rb +39 -0
- data/spec/framework_spec/app/spec/core/array/pack/g_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/array/pack/h_spec.rb +201 -0
- data/spec/framework_spec/app/spec/core/array/pack/i_spec.rb +73 -0
- data/spec/framework_spec/app/spec/core/array/pack/l_spec.rb +193 -0
- data/spec/framework_spec/app/spec/core/array/pack/m_spec.rb +337 -0
- data/spec/framework_spec/app/spec/core/array/pack/n_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/array/pack/percent_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/pack/q_spec.rb +43 -0
- data/spec/framework_spec/app/spec/core/array/pack/s_spec.rb +73 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/basic.rb +57 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/encodings.rb +16 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/float.rb +277 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/integer.rb +381 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/numeric_basic.rb +54 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/string.rb +83 -0
- data/spec/framework_spec/app/spec/core/array/pack/shared/unicode.rb +89 -0
- data/spec/framework_spec/app/spec/core/array/pack/u_spec.rb +130 -0
- data/spec/framework_spec/app/spec/core/array/pack/v_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/array/pack/w_spec.rb +44 -0
- data/spec/framework_spec/app/spec/core/array/pack/x_spec.rb +64 -0
- data/spec/framework_spec/app/spec/core/array/pack/z_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/array/pack_spec.rb +409 -369
- data/spec/framework_spec/app/spec/core/array/partition_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/array/permutation_spec.rb +34 -15
- data/spec/framework_spec/app/spec/core/array/plus_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/array/pop_spec.rb +17 -4
- data/spec/framework_spec/app/spec/core/array/product_spec.rb +49 -5
- data/spec/framework_spec/app/spec/core/array/push_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/array/rassoc_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/reject_spec.rb +42 -29
- data/spec/framework_spec/app/spec/core/array/repeated_combination_spec.rb +59 -0
- data/spec/framework_spec/app/spec/core/array/repeated_permutation_spec.rb +72 -0
- data/spec/framework_spec/app/spec/core/array/replace_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/reverse_each_spec.rb +26 -39
- data/spec/framework_spec/app/spec/core/array/reverse_spec.rb +15 -7
- data/spec/framework_spec/app/spec/core/array/rindex_spec.rb +28 -16
- data/spec/framework_spec/app/spec/core/array/rotate_spec.rb +85 -0
- data/spec/framework_spec/app/spec/core/array/sample_spec.rb +4 -10
- data/spec/framework_spec/app/spec/core/array/select_spec.rb +16 -3
- data/spec/framework_spec/app/spec/core/array/shared/clone.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/shared/collect.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/shared/enumeratorize.rb +12 -0
- data/spec/framework_spec/app/spec/core/array/shared/eql.rb +9 -5
- data/spec/framework_spec/app/spec/core/array/shared/indexes.rb +1 -1
- data/spec/framework_spec/app/spec/core/array/shared/join.rb +122 -90
- data/spec/framework_spec/app/spec/core/array/shared/keep_if.rb +11 -0
- data/spec/framework_spec/app/spec/core/array/shared/slice.rb +67 -6
- data/spec/framework_spec/app/spec/core/array/shift_spec.rb +18 -4
- data/spec/framework_spec/app/spec/core/array/shuffle_spec.rb +23 -14
- data/spec/framework_spec/app/spec/core/array/size_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/array/slice_spec.rb +19 -3
- data/spec/framework_spec/app/spec/core/array/sort_by_spec.rb +48 -0
- data/spec/framework_spec/app/spec/core/array/sort_spec.rb +65 -65
- data/spec/framework_spec/app/spec/core/array/take_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/take_while_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/array/to_a_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/array/to_ary_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/array/to_s_spec.rb +2 -5
- data/spec/framework_spec/app/spec/core/array/transpose_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/array/try_convert_spec.rb +15 -17
- data/spec/framework_spec/app/spec/core/array/union_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/array/uniq_spec.rb +41 -15
- data/spec/framework_spec/app/spec/core/array/unshift_spec.rb +9 -7
- data/spec/framework_spec/app/spec/core/array/values_at_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/array/zip_spec.rb +15 -3
- data/spec/framework_spec/app/spec/core/basicobject/__send___spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/basicobject/ancestors_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/basicobject/basicobject_spec.rb +67 -0
- data/spec/framework_spec/app/spec/core/basicobject/class_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/basicobject/equal_spec.rb +20 -0
- data/spec/framework_spec/app/spec/core/basicobject/equal_value_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/basicobject/fixtures/common.rb +5 -0
- data/spec/framework_spec/app/spec/core/basicobject/fixtures/remove_method_missing.rb +9 -0
- data/spec/framework_spec/app/spec/core/basicobject/initialize_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/basicobject/instance_eval_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/basicobject/instance_exec_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/basicobject/method_missing_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/basicobject/new_spec.rb +7 -5
- data/spec/framework_spec/app/spec/core/basicobject/not_equal_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/basicobject/not_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/basicobject/singleton_method_added_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/basicobject/singleton_method_removed_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/basicobject/singleton_method_undefined_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/basicobject/superclass_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/bignum/abs_spec.rb +4 -5
- data/spec/framework_spec/app/spec/core/bignum/bit_and_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/bignum/bit_or_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/bignum/bit_xor_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/bignum/case_compare_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/bignum/coerce_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/comparison_spec.rb +143 -20
- data/spec/framework_spec/app/spec/core/bignum/complement_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/div_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/divide_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/divmod_spec.rb +11 -6
- data/spec/framework_spec/app/spec/core/bignum/element_reference_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/bignum/eql_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/equal_value_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/bignum/even_spec.rb +21 -0
- data/spec/framework_spec/app/spec/core/bignum/exponent_spec.rb +16 -2
- data/spec/framework_spec/app/spec/core/bignum/fdiv_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/bignum/gt_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/bignum/gte_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/hash_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/left_shift_spec.rb +64 -40
- data/spec/framework_spec/app/spec/core/bignum/lt_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/bignum/lte_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/magnitude_spec.rb +10 -0
- data/spec/framework_spec/app/spec/core/bignum/minus_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/bignum/modulo_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/multiply_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/odd_spec.rb +21 -0
- data/spec/framework_spec/app/spec/core/bignum/plus_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/bignum/quo_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/remainder_spec.rb +19 -8
- data/spec/framework_spec/app/spec/core/bignum/right_shift_spec.rb +93 -34
- data/spec/framework_spec/app/spec/core/bignum/shared/abs.rb +6 -0
- data/spec/framework_spec/app/spec/core/bignum/shared/divide.rb +2 -2
- data/spec/framework_spec/app/spec/core/bignum/shared/modulo.rb +13 -4
- data/spec/framework_spec/app/spec/core/bignum/size_spec.rb +15 -1
- data/spec/framework_spec/app/spec/core/bignum/to_f_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/bignum/to_s_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/bignum/uminus_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/binding/clone_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/binding/dup_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/binding/eval_spec.rb +19 -25
- data/spec/framework_spec/app/spec/core/binding/fixtures/classes.rb +1 -1
- data/spec/framework_spec/app/spec/core/builtin_constants/builtin_constants_spec.rb +57 -0
- data/spec/framework_spec/app/spec/core/class/allocate_spec.rb +11 -5
- data/spec/framework_spec/app/spec/core/class/dup_spec.rb +72 -0
- data/spec/framework_spec/app/spec/core/class/fixtures/classes.rb +5 -5
- data/spec/framework_spec/app/spec/core/class/inherited_spec.rb +22 -22
- data/spec/framework_spec/app/spec/core/class/initialize_copy_spec.rb +22 -1
- data/spec/framework_spec/app/spec/core/class/initialize_spec.rb +37 -6
- data/spec/framework_spec/app/spec/core/class/new_spec.rb +11 -2
- data/spec/framework_spec/app/spec/core/class/superclass_spec.rb +37 -8
- data/spec/framework_spec/app/spec/core/comparable/between_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/comparable/equal_value_spec.rb +11 -11
- data/spec/framework_spec/app/spec/core/comparable/fixtures/classes.rb +3 -3
- data/spec/framework_spec/app/spec/core/comparable/gt_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/comparable/gte_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/comparable/lt_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/comparable/lte_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/complex/Complex_spec.rb +20 -0
- data/spec/framework_spec/app/spec/core/complex/abs2_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/complex/abs_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/complex/angle_spec.rb +10 -0
- data/spec/framework_spec/app/spec/core/complex/arg_spec.rb +10 -0
- data/spec/framework_spec/app/spec/core/complex/coerce_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/complex/conj_spec.rb +10 -0
- data/spec/framework_spec/app/spec/core/complex/conjugate_spec.rb +10 -0
- data/spec/framework_spec/app/spec/core/complex/denominator_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/complex/divide_spec.rb +24 -0
- data/spec/framework_spec/app/spec/core/complex/eql_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/equal_value_spec.rb +16 -0
- data/spec/framework_spec/app/spec/core/complex/exponent_spec.rb +24 -0
- data/spec/framework_spec/app/spec/core/complex/fdiv_spec.rb +131 -0
- data/spec/framework_spec/app/spec/core/complex/hash_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/complex/imag_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/imaginary_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/inspect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/integer_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/complex/magnitude_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/complex/marshal_dump_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/marshal_load_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/minus_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/complex/multiply_spec.rb +16 -0
- data/spec/framework_spec/app/spec/core/complex/numerator_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/phase_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/plus_spec.rb +16 -0
- data/spec/framework_spec/app/spec/core/complex/polar_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/complex/quo_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/rationalize_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/complex/real_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/complex/rect_spec.rb +11 -0
- data/spec/framework_spec/app/spec/core/complex/rectangular_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/complex/to_f_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/to_i_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/to_r_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/complex/to_s_spec.rb +12 -0
- data/spec/framework_spec/app/spec/core/complex/uminus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/continuation/call_spec.rb +8 -1
- data/spec/framework_spec/app/spec/core/continuation/element_reference_spec.rb +8 -1
- data/spec/framework_spec/app/spec/core/continuation/new_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/dir/chdir_spec.rb +64 -17
- data/spec/framework_spec/app/spec/core/dir/chroot_spec.rb +50 -26
- data/spec/framework_spec/app/spec/core/dir/close_spec.rb +32 -16
- data/spec/framework_spec/app/spec/core/dir/delete_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/dir/dir_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/dir/each_spec.rb +24 -8
- data/spec/framework_spec/app/spec/core/dir/element_reference_spec.rb +19 -3
- data/spec/framework_spec/app/spec/core/dir/entries_spec.rb +19 -3
- data/spec/framework_spec/app/spec/core/dir/exist_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/dir/exists_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/dir/fixtures/common.rb +96 -73
- data/spec/framework_spec/app/spec/core/dir/foreach_spec.rb +20 -4
- data/spec/framework_spec/app/spec/core/dir/getwd_spec.rb +12 -4
- data/spec/framework_spec/app/spec/core/dir/glob_spec.rb +60 -8
- data/spec/framework_spec/app/spec/core/dir/home_spec.rb +15 -6
- data/spec/framework_spec/app/spec/core/dir/initialize_spec.rb +29 -2
- data/spec/framework_spec/app/spec/core/dir/inspect_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/dir/mkdir_spec.rb +56 -21
- data/spec/framework_spec/app/spec/core/dir/open_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/dir/path_spec.rb +8 -24
- data/spec/framework_spec/app/spec/core/dir/pos_spec.rb +28 -4
- data/spec/framework_spec/app/spec/core/dir/pwd_spec.rb +44 -20
- data/spec/framework_spec/app/spec/core/dir/read_spec.rb +11 -5
- data/spec/framework_spec/app/spec/core/dir/rewind_spec.rb +13 -7
- data/spec/framework_spec/app/spec/core/dir/rmdir_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/dir/seek_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/dir/shared/chroot.rb +43 -0
- data/spec/framework_spec/app/spec/core/dir/shared/delete.rb +27 -8
- data/spec/framework_spec/app/spec/core/dir/shared/exists.rb +53 -0
- data/spec/framework_spec/app/spec/core/dir/shared/glob.rb +61 -8
- data/spec/framework_spec/app/spec/core/dir/shared/open.rb +18 -2
- data/spec/framework_spec/app/spec/core/dir/shared/path.rb +29 -0
- data/spec/framework_spec/app/spec/core/dir/shared/pos.rb +1 -1
- data/spec/framework_spec/app/spec/core/dir/shared/pwd.rb +13 -13
- data/spec/framework_spec/app/spec/core/dir/tell_spec.rb +12 -6
- data/spec/framework_spec/app/spec/core/dir/to_path.rb +17 -0
- data/spec/framework_spec/app/spec/core/dir/to_path_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/dir/unlink_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/encoding/_dump_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/_load_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/aliases_spec.rb +45 -0
- data/spec/framework_spec/app/spec/core/encoding/ascii_compatible_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/encoding/compatible_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/asciicompat_encoding_spec.rb +48 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/constants_spec.rb +133 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/convert_spec.rb +46 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/convpath_spec.rb +65 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/destination_encoding_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/finish_spec.rb +38 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/insert_output_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/inspect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/last_error_spec.rb +84 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/primitive_convert_spec.rb +137 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/primitive_errinfo_spec.rb +71 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/putback_spec.rb +49 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/replacement_spec.rb +63 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/search_convpath_spec.rb +73 -0
- data/spec/framework_spec/app/spec/core/encoding/converter/source_encoding_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/encoding/default_external_spec.rb +57 -0
- data/spec/framework_spec/app/spec/core/encoding/default_internal_spec.rb +83 -0
- data/spec/framework_spec/app/spec/core/encoding/dummy_spec.rb +16 -0
- data/spec/framework_spec/app/spec/core/encoding/find_spec.rb +82 -0
- data/spec/framework_spec/app/spec/core/encoding/fixtures/classes.rb +48 -0
- data/spec/framework_spec/app/spec/core/encoding/inspect_spec.rb +21 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/destination_encoding_name_spec.rb +20 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/destination_encoding_spec.rb +20 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/error_bytes_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/incomplete_input_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/readagain_bytes_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/source_encoding_name_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/encoding/invalid_byte_sequence_error/source_encoding_spec.rb +35 -0
- data/spec/framework_spec/app/spec/core/encoding/list_spec.rb +43 -0
- data/spec/framework_spec/app/spec/core/encoding/locale_charmap_spec.rb +38 -0
- data/spec/framework_spec/app/spec/core/encoding/name_list_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/encoding/name_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/names_spec.rb +37 -0
- data/spec/framework_spec/app/spec/core/encoding/replicate_spec.rb +34 -0
- data/spec/framework_spec/app/spec/core/encoding/shared/name.rb +15 -0
- data/spec/framework_spec/app/spec/core/encoding/to_s_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/encoding/undefined_conversion_error/destination_encoding_name_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/encoding/undefined_conversion_error/destination_encoding_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/encoding/undefined_conversion_error/error_char_spec.rb +29 -0
- data/spec/framework_spec/app/spec/core/encoding/undefined_conversion_error/source_encoding_name_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/encoding/undefined_conversion_error/source_encoding_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/enumerable/all_spec.rb +2 -15
- data/spec/framework_spec/app/spec/core/enumerable/any_spec.rb +2 -7
- data/spec/framework_spec/app/spec/core/enumerable/chunk_spec.rb +44 -0
- data/spec/framework_spec/app/spec/core/enumerable/collect_concat_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/enumerable/collect_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/count_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/cycle_spec.rb +20 -6
- data/spec/framework_spec/app/spec/core/enumerable/detect_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/drop_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/enumerable/drop_while_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/each_cons_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/enumerable/each_entry_spec.rb +40 -0
- data/spec/framework_spec/app/spec/core/enumerable/each_slice_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/enumerable/each_with_index_spec.rb +15 -15
- data/spec/framework_spec/app/spec/core/enumerable/each_with_object_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/enumerable/entries_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/find_all_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/{find_index.rb → find_index_spec.rb} +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/find_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/first_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/enumerable/fixtures/classes.rb +67 -16
- data/spec/framework_spec/app/spec/core/enumerable/flat_map_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/enumerable/grep_spec.rb +12 -7
- data/spec/framework_spec/app/spec/core/enumerable/group_by_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/include_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/inject_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/map_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/max_by_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/max_spec.rb +27 -12
- data/spec/framework_spec/app/spec/core/enumerable/member_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/min_by_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/min_spec.rb +27 -11
- data/spec/framework_spec/app/spec/core/enumerable/minmax_by_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/minmax_spec.rb +26 -10
- data/spec/framework_spec/app/spec/core/enumerable/none_spec.rb +42 -0
- data/spec/framework_spec/app/spec/core/enumerable/one_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/enumerable/partition_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/reduce_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/reject_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/reverse_each_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/select_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/enumerable/shared/collect.rb +13 -5
- data/spec/framework_spec/app/spec/core/enumerable/shared/collect_concat.rb +27 -0
- data/spec/framework_spec/app/spec/core/enumerable/shared/entries.rb +5 -1
- data/spec/framework_spec/app/spec/core/enumerable/shared/find.rb +24 -11
- data/spec/framework_spec/app/spec/core/enumerable/shared/find_all.rb +9 -3
- data/spec/framework_spec/app/spec/core/enumerable/shared/include.rb +14 -3
- data/spec/framework_spec/app/spec/core/enumerable/shared/inject.rb +8 -8
- data/spec/framework_spec/app/spec/core/enumerable/shared/take.rb +5 -3
- data/spec/framework_spec/app/spec/core/enumerable/slice_before_spec.rb +77 -0
- data/spec/framework_spec/app/spec/core/enumerable/sort_by_spec.rb +10 -2
- data/spec/framework_spec/app/spec/core/enumerable/sort_spec.rb +22 -9
- data/spec/framework_spec/app/spec/core/enumerable/take_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/take_while_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/enumerable/to_a_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/enumerable/zip_spec.rb +18 -7
- data/spec/framework_spec/app/spec/core/enumerator/each_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/each_with_index_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/enumerator/each_with_object_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/enumerator/enum_for_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/enumerator/feed_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/generator/each_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/inspect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/new_spec.rb +28 -0
- data/spec/framework_spec/app/spec/core/enumerator/next_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/enumerator/next_values_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/peek_spec.rb +38 -0
- data/spec/framework_spec/app/spec/core/enumerator/peek_values_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/enumerator/rewind_spec.rb +27 -0
- data/spec/framework_spec/app/spec/core/enumerator/to_enum_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/enumerator/with_index_spec.rb +68 -0
- data/spec/framework_spec/app/spec/core/enumerator/with_object_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/enumerator/yielder/append_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/enumerator/yielder/yield_spec.rb +18 -0
- data/spec/framework_spec/app/spec/core/env/clear_spec.rb +19 -13
- data/spec/framework_spec/app/spec/core/env/delete_if_spec.rb +26 -28
- data/spec/framework_spec/app/spec/core/env/delete_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/env/each_key_spec.rb +39 -33
- data/spec/framework_spec/app/spec/core/env/each_pair_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/each_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/each_value_spec.rb +39 -33
- data/spec/framework_spec/app/spec/core/env/element_reference_spec.rb +25 -2
- data/spec/framework_spec/app/spec/core/env/element_set_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/env/empty_spec.rb +23 -24
- data/spec/framework_spec/app/spec/core/env/fetch_spec.rb +6 -1
- data/spec/framework_spec/app/spec/core/env/has_key_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/env/has_value_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/include_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/env/index_spec.rb +6 -1
- data/spec/framework_spec/app/spec/core/env/indexes_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/env/indices_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/env/inspect_spec.rb +11 -12
- data/spec/framework_spec/app/spec/core/env/invert_spec.rb +12 -13
- data/spec/framework_spec/app/spec/core/env/key_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/env/keys_spec.rb +16 -9
- data/spec/framework_spec/app/spec/core/env/length_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/member_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/env/rehash_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/env/reject_spec.rb +88 -89
- data/spec/framework_spec/app/spec/core/env/replace_spec.rb +15 -16
- data/spec/framework_spec/app/spec/core/env/select_spec.rb +32 -23
- data/spec/framework_spec/app/spec/core/env/shared/each.rb +10 -1
- data/spec/framework_spec/app/spec/core/env/shared/key.rb +15 -0
- data/spec/framework_spec/app/spec/core/env/shared/store.rb +18 -12
- data/spec/framework_spec/app/spec/core/env/shared/value.rb +7 -0
- data/spec/framework_spec/app/spec/core/env/shift_spec.rb +27 -28
- data/spec/framework_spec/app/spec/core/env/size_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/store_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/env/to_a_spec.rb +21 -13
- data/spec/framework_spec/app/spec/core/env/to_hash_spec.rb +12 -13
- data/spec/framework_spec/app/spec/core/env/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/env/update_spec.rb +1 -2
- data/spec/framework_spec/app/spec/core/env/value_spec.rb +6 -7
- data/spec/framework_spec/app/spec/core/env/values_at_spec.rb +7 -1
- data/spec/framework_spec/app/spec/core/env/values_spec.rb +23 -16
- data/spec/framework_spec/app/spec/core/exception/args_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/arguments_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/exception/backtrace_spec.rb +51 -1
- data/spec/framework_spec/app/spec/core/exception/case_compare_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/exception/destination_encoding_name_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/exception/destination_encoding_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/exception/equal_value_spec.rb +84 -0
- data/spec/framework_spec/app/spec/core/exception/errno_spec.rb +16 -1
- data/spec/framework_spec/app/spec/core/exception/error_bytes_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/exception/error_char_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/exception/exception_spec.rb +69 -5
- data/spec/framework_spec/app/spec/core/exception/exit_value_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/exception/fixtures/common.rb +33 -1
- data/spec/framework_spec/app/spec/core/exception/incomplete_input_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/exception/initialize_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/exception/inspect_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/exception/io_error_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/exception/message_spec.rb +14 -4
- data/spec/framework_spec/app/spec/core/exception/name_error_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/exception/name_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/exception/new_spec.rb +3 -2
- data/spec/framework_spec/app/spec/core/exception/no_method_error_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/exception/range_error_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/exception/readagain_bytes_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/exception/reason_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/result_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/exception/script_error_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/exception/set_backtrace_spec.rb +10 -1
- data/spec/framework_spec/app/spec/core/exception/shared/new.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/shared/to_s.rb +3 -3
- data/spec/framework_spec/app/spec/core/exception/signm_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/signo_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/source_encoding_name_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/exception/source_encoding_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/exception/standard_error_spec.rb +56 -55
- data/spec/framework_spec/app/spec/core/exception/status_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/success_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/exception/system_call_error_spec.rb +14 -5
- data/spec/framework_spec/app/spec/core/exception/to_s_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/exception/to_str_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/false/and_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/false/inspect_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/false/or_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/false/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/false/xor_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fiber/new_spec.rb +48 -49
- data/spec/framework_spec/app/spec/core/fiber/resume_spec.rb +39 -23
- data/spec/framework_spec/app/spec/core/fiber/yield_spec.rb +34 -36
- data/spec/framework_spec/app/spec/core/file/absolute_path_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/file/atime_spec.rb +12 -5
- data/spec/framework_spec/app/spec/core/file/basename_spec.rb +25 -26
- data/spec/framework_spec/app/spec/core/file/blockdev_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/chardev_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/chmod_spec.rb +14 -10
- data/spec/framework_spec/app/spec/core/file/chown_spec.rb +22 -4
- data/spec/framework_spec/app/spec/core/file/constants/constants_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/file/constants_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/file/ctime_spec.rb +13 -6
- data/spec/framework_spec/app/spec/core/file/delete_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/directory_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/file/dirname_spec.rb +12 -2
- data/spec/framework_spec/app/spec/core/file/executable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/executable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/exist_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/exists_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/expand_path_spec.rb +133 -31
- data/spec/framework_spec/app/spec/core/file/extname_spec.rb +7 -1
- data/spec/framework_spec/app/spec/core/file/file_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/fixtures/common.rb +22 -0
- data/spec/framework_spec/app/spec/core/file/fixtures/file_types.rb +3 -9
- data/spec/framework_spec/app/spec/core/file/flock_spec.rb +56 -18
- data/spec/framework_spec/app/spec/core/file/fnmatch_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/ftype_spec.rb +43 -45
- data/spec/framework_spec/app/spec/core/file/grpowned_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/identical_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/initialize_spec.rb +25 -1
- data/spec/framework_spec/app/spec/core/file/inspect_spec.rb +14 -7
- data/spec/framework_spec/app/spec/core/file/join_spec.rb +37 -10
- data/spec/framework_spec/app/spec/core/file/lchmod_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/file/lchown_spec.rb +12 -6
- data/spec/framework_spec/app/spec/core/file/link_spec.rb +7 -9
- data/spec/framework_spec/app/spec/core/file/lstat_spec.rb +16 -11
- data/spec/framework_spec/app/spec/core/file/mtime_spec.rb +7 -6
- data/spec/framework_spec/app/spec/core/file/new_spec.rb +60 -44
- data/spec/framework_spec/app/spec/core/file/open_spec.rb +104 -120
- data/spec/framework_spec/app/spec/core/file/owned_spec.rb +26 -3
- data/spec/framework_spec/app/spec/core/file/path_spec.rb +11 -10
- data/spec/framework_spec/app/spec/core/file/pipe_spec.rb +25 -3
- data/spec/framework_spec/app/spec/core/file/read_spec.rb +6 -0
- data/spec/framework_spec/app/spec/core/file/readable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/readable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/readlink_spec.rb +17 -13
- data/spec/framework_spec/app/spec/core/file/realdirpath_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/file/realpath_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/file/rename_spec.rb +24 -27
- data/spec/framework_spec/app/spec/core/file/reopen_spec.rb +27 -0
- data/spec/framework_spec/app/spec/core/file/setgid_spec.rb +21 -21
- data/spec/framework_spec/app/spec/core/file/setuid_spec.rb +21 -21
- data/spec/framework_spec/app/spec/core/file/shared/fnmatch.rb +11 -5
- data/spec/framework_spec/app/spec/core/file/shared/open.rb +9 -0
- data/spec/framework_spec/app/spec/core/file/shared/read.rb +21 -0
- data/spec/framework_spec/app/spec/core/file/shared/stat.rb +31 -17
- data/spec/framework_spec/app/spec/core/file/shared/unlink.rb +8 -4
- data/spec/framework_spec/app/spec/core/file/size_spec.rb +111 -22
- data/spec/framework_spec/app/spec/core/file/socket_spec.rb +24 -3
- data/spec/framework_spec/app/spec/core/file/split_spec.rb +12 -7
- data/spec/framework_spec/app/spec/core/file/stat/atime_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/file/stat/blksize_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/file/stat/blockdev_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/blocks_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/file/stat/chardev_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/file/stat/comparison_spec.rb +14 -9
- data/spec/framework_spec/app/spec/core/file/stat/ctime_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/file/stat/dev_major_spec.rb +12 -3
- data/spec/framework_spec/app/spec/core/file/stat/dev_minor_spec.rb +13 -3
- data/spec/framework_spec/app/spec/core/file/stat/dev_spec.rb +10 -2
- data/spec/framework_spec/app/spec/core/file/stat/directory_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/executable_real_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/executable_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/file_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/ftype_spec.rb +14 -17
- data/spec/framework_spec/app/spec/core/file/stat/gid_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/file/stat/grpowned_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/ino_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/file/stat/inspect_spec.rb +8 -10
- data/spec/framework_spec/app/spec/core/file/stat/mode_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/file/stat/mtime_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/file/stat/new_spec.rb +11 -4
- data/spec/framework_spec/app/spec/core/file/stat/nlink_spec.rb +5 -6
- data/spec/framework_spec/app/spec/core/file/stat/owned_spec.rb +24 -4
- data/spec/framework_spec/app/spec/core/file/stat/pipe_spec.rb +25 -4
- data/spec/framework_spec/app/spec/core/file/stat/rdev_major_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/file/stat/rdev_minor_spec.rb +13 -3
- data/spec/framework_spec/app/spec/core/file/stat/rdev_spec.rb +10 -2
- data/spec/framework_spec/app/spec/core/file/stat/readable_real_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/readable_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/setgid_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/setuid_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/size_spec.rb +18 -4
- data/spec/framework_spec/app/spec/core/file/stat/socket_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/sticky_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/symlink_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/uid_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/file/stat/world_readable_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/file/stat/world_writable_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/file/stat/writable_real_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/writable_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat/zero_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/file/stat_spec.rb +23 -6
- data/spec/framework_spec/app/spec/core/file/sticky_spec.rb +49 -3
- data/spec/framework_spec/app/spec/core/file/symlink_spec.rb +18 -11
- data/spec/framework_spec/app/spec/core/file/to_path_spec.rb +48 -0
- data/spec/framework_spec/app/spec/core/file/truncate_spec.rb +34 -39
- data/spec/framework_spec/app/spec/core/file/umask_spec.rb +20 -21
- data/spec/framework_spec/app/spec/core/file/unlink_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/utime_spec.rb +20 -5
- data/spec/framework_spec/app/spec/core/file/world_readable_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/file/world_writable_spec.rb +16 -0
- data/spec/framework_spec/app/spec/core/file/writable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/writable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/file/zero_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/blockdev_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/chardev_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/filetest/directory_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/executable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/executable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/exist_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/exists_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/file_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/grpowned_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/identical_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/owned_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/pipe_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/readable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/readable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/setgid_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/setuid_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/size_spec.rb +31 -4
- data/spec/framework_spec/app/spec/core/filetest/socket_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/filetest/sticky_spec.rb +3 -2
- data/spec/framework_spec/app/spec/core/filetest/symlink_spec.rb +5 -2
- data/spec/framework_spec/app/spec/core/filetest/world_readable_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/filetest/world_writable_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/filetest/writable_real_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/writable_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/filetest/zero_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/fixnum/abs_spec.rb +4 -8
- data/spec/framework_spec/app/spec/core/fixnum/bit_and_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/fixnum/bit_or_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/fixnum/bit_xor_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/fixnum/case_compare_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/fixnum/coerce_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/fixnum/comparison_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/fixnum/complement_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/div_spec.rb +17 -7
- data/spec/framework_spec/app/spec/core/fixnum/divide_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/fixnum/divmod_spec.rb +16 -6
- data/spec/framework_spec/app/spec/core/fixnum/element_reference_spec.rb +45 -19
- data/spec/framework_spec/app/spec/core/fixnum/equal_value_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/fixnum/even_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/fixnum/exponent_spec.rb +59 -7
- data/spec/framework_spec/app/spec/core/fixnum/fdiv_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/fixnum/gt_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/fixnum/gte_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/fixnum/hash_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/id2name_spec.rb +15 -13
- data/spec/framework_spec/app/spec/core/fixnum/induced_from_spec.rb +36 -35
- data/spec/framework_spec/app/spec/core/fixnum/left_shift_spec.rb +72 -42
- data/spec/framework_spec/app/spec/core/fixnum/lt_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/fixnum/lte_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/fixnum/magnitude_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/fixnum/minus_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/fixnum/modulo_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/fixnum/multiply_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/fixnum/odd_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/fixnum/plus_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/quo_spec.rb +16 -6
- data/spec/framework_spec/app/spec/core/fixnum/right_shift_spec.rb +84 -40
- data/spec/framework_spec/app/spec/core/fixnum/shared/abs.rb +9 -0
- data/spec/framework_spec/app/spec/core/fixnum/shared/modulo.rb +17 -7
- data/spec/framework_spec/app/spec/core/fixnum/size_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/succ_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/fixnum/to_f_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/to_s_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/fixnum/to_sym_spec.rb +16 -14
- data/spec/framework_spec/app/spec/core/fixnum/uminus_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/fixnum/zero_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/float/abs_spec.rb +2 -6
- data/spec/framework_spec/app/spec/core/float/angle_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/arg_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/case_compare_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/ceil_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/coerce_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/comparison_spec.rb +52 -1
- data/spec/framework_spec/app/spec/core/float/constants_spec.rb +25 -17
- data/spec/framework_spec/app/spec/core/float/denominator_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/float/divide_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/float/divmod_spec.rb +26 -1
- data/spec/framework_spec/app/spec/core/float/eql_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/equal_value_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/exponent_spec.rb +10 -2
- data/spec/framework_spec/app/spec/core/float/fdiv_spec.rb +68 -0
- data/spec/framework_spec/app/spec/core/float/finite_spec.rb +3 -1
- data/spec/framework_spec/app/spec/core/float/fixtures/coerce.rb +15 -0
- data/spec/framework_spec/app/spec/core/float/floor_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/gt_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/gte_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/hash_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/induced_from_spec.rb +38 -37
- data/spec/framework_spec/app/spec/core/float/infinite_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/lt_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/lte_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/magnitude_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/minus_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/modulo_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/float/multiply_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/float/nan_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/numerator_spec.rb +47 -0
- data/spec/framework_spec/app/spec/core/float/phase_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/plus_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/quo_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/rationalize_spec.rb +40 -0
- data/spec/framework_spec/app/spec/core/float/round_spec.rb +32 -6
- data/spec/framework_spec/app/spec/core/float/shared/abs.rb +9 -0
- data/spec/framework_spec/app/spec/core/float/shared/modulo.rb +14 -3
- data/spec/framework_spec/app/spec/core/float/to_f_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/to_i_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/float/to_int_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/float/to_r_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/float/to_s_spec.rb +93 -18
- data/spec/framework_spec/app/spec/core/float/truncate_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/float/uminus_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/float/uplus_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/float/zero_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/gc/count_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/disable_spec.rb +17 -1
- data/spec/framework_spec/app/spec/core/gc/enable_spec.rb +12 -1
- data/spec/framework_spec/app/spec/core/gc/garbage_collect_spec.rb +15 -1
- data/spec/framework_spec/app/spec/core/gc/profiler/clear_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/disable_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/enable_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/enabled_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/report_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/result_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/profiler/total_time_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/gc/start_spec.rb +8 -1
- data/spec/framework_spec/app/spec/core/gc/stress_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/hash/allocate_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/assoc_spec.rb +43 -0
- data/spec/framework_spec/app/spec/core/hash/clear_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/clone_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/hash/compare_by_identity_spec.rb +109 -0
- data/spec/framework_spec/app/spec/core/hash/constructor_spec.rb +8 -4
- data/spec/framework_spec/app/spec/core/hash/default_proc_spec.rb +24 -4
- data/spec/framework_spec/app/spec/core/hash/default_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/hash/delete_if_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/delete_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/each_key_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/each_pair_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/hash/each_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/hash/each_value_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/element_reference_spec.rb +111 -115
- data/spec/framework_spec/app/spec/core/hash/element_set_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/hash/empty_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/eql_spec.rb +18 -19
- data/spec/framework_spec/app/spec/core/hash/equal_value_spec.rb +18 -14
- data/spec/framework_spec/app/spec/core/hash/fetch_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/fixtures/classes.rb +1 -1
- data/spec/framework_spec/app/spec/core/hash/flatten_spec.rb +64 -0
- data/spec/framework_spec/app/spec/core/hash/has_key_spec.rb +8 -9
- data/spec/framework_spec/app/spec/core/hash/has_value_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/hash_spec.rb +20 -1
- data/spec/framework_spec/app/spec/core/hash/include_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/hash/index_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/indexes_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/indices_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/initialize_copy_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/initialize_spec.rb +8 -3
- data/spec/framework_spec/app/spec/core/hash/inspect_spec.rb +3 -41
- data/spec/framework_spec/app/spec/core/hash/invert_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/keep_if_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/hash/key_spec.rb +14 -15
- data/spec/framework_spec/app/spec/core/hash/keys_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/hash/length_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/member_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/hash/merge_spec.rb +10 -17
- data/spec/framework_spec/app/spec/core/hash/new_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/rassoc_spec.rb +39 -0
- data/spec/framework_spec/app/spec/core/hash/rehash_spec.rb +51 -60
- data/spec/framework_spec/app/spec/core/hash/reject_spec.rb +18 -12
- data/spec/framework_spec/app/spec/core/hash/replace_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/select_spec.rb +38 -5
- data/spec/framework_spec/app/spec/core/hash/shared/each.rb +46 -6
- data/spec/framework_spec/app/spec/core/hash/shared/eql.rb +14 -1
- data/spec/framework_spec/app/spec/core/hash/shared/index.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/shared/iteration.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/shared/key.rb +5 -3
- data/spec/framework_spec/app/spec/core/hash/shared/replace.rb +22 -11
- data/spec/framework_spec/app/spec/core/hash/shared/store.rb +14 -1
- data/spec/framework_spec/app/spec/core/hash/shared/to_s.rb +22 -21
- data/spec/framework_spec/app/spec/core/hash/shared/update.rb +27 -8
- data/spec/framework_spec/app/spec/core/hash/shift_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/size_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/sort_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/store_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/hash/to_a_spec.rb +16 -3
- data/spec/framework_spec/app/spec/core/hash/to_hash_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/hash/to_s_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/hash/try_convert_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/hash/update_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/value_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/hash/values_at_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/hash/values_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/integer/ceil_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/chr_spec.rb +141 -18
- data/spec/framework_spec/app/spec/core/integer/denominator_spec.rb +22 -0
- data/spec/framework_spec/app/spec/core/integer/downto_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/integer/even_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/floor_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/gcd_spec.rb +60 -0
- data/spec/framework_spec/app/spec/core/integer/gcdlcm_spec.rb +55 -0
- data/spec/framework_spec/app/spec/core/integer/induced_from_spec.rb +43 -42
- data/spec/framework_spec/app/spec/core/integer/integer_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/lcm_spec.rb +60 -0
- data/spec/framework_spec/app/spec/core/integer/next_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/numerator_spec.rb +20 -0
- data/spec/framework_spec/app/spec/core/integer/odd_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/integer/ord_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/integer/pred_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/integer/rationalize_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/integer/round_spec.rb +35 -2
- data/spec/framework_spec/app/spec/core/integer/shared/next.rb +1 -1
- data/spec/framework_spec/app/spec/core/integer/succ_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/times_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/integer/to_i_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/to_int_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/to_r_spec.rb +28 -0
- data/spec/framework_spec/app/spec/core/integer/truncate_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/integer/upto_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/io/binmode_spec.rb +21 -5
- data/spec/framework_spec/app/spec/core/io/binread_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/bytes_spec.rb +27 -16
- data/spec/framework_spec/app/spec/core/io/chars_spec.rb +35 -19
- data/spec/framework_spec/app/spec/core/io/close_on_exec_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/io/close_read_spec.rb +29 -29
- data/spec/framework_spec/app/spec/core/io/close_spec.rb +15 -19
- data/spec/framework_spec/app/spec/core/io/close_write_spec.rb +13 -14
- data/spec/framework_spec/app/spec/core/io/closed_spec.rb +15 -7
- data/spec/framework_spec/app/spec/core/io/codepoints_spec.rb +29 -0
- data/spec/framework_spec/app/spec/core/io/constants_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/io/copy_stream_spec.rb +50 -0
- data/spec/framework_spec/app/spec/core/io/dup_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/io/each_byte_spec.rb +32 -26
- data/spec/framework_spec/app/spec/core/io/each_char_spec.rb +35 -22
- data/spec/framework_spec/app/spec/core/io/each_codepoint_spec.rb +34 -0
- data/spec/framework_spec/app/spec/core/io/each_line_spec.rb +7 -5
- data/spec/framework_spec/app/spec/core/io/each_spec.rb +8 -6
- data/spec/framework_spec/app/spec/core/io/eof_spec.rb +59 -45
- data/spec/framework_spec/app/spec/core/io/external_encoding_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/fcntl_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/io/fdatasync_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/fileno_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/io/fixtures/classes.rb +57 -15
- data/spec/framework_spec/app/spec/core/io/fixtures/empty.txt +0 -0
- data/spec/framework_spec/app/spec/core/io/fixtures/{gets.txt → lines.txt} +0 -0
- data/spec/framework_spec/app/spec/core/io/fixtures/reopen_stdout.rb +3 -0
- data/spec/framework_spec/app/spec/core/io/flush_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/io/for_fd_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/io/foreach_spec.rb +132 -90
- data/spec/framework_spec/app/spec/core/io/fsync_spec.rb +15 -15
- data/spec/framework_spec/app/spec/core/io/getbyte_spec.rb +27 -21
- data/spec/framework_spec/app/spec/core/io/getc_spec.rb +30 -24
- data/spec/framework_spec/app/spec/core/io/gets_spec.rb +144 -127
- data/spec/framework_spec/app/spec/core/io/initialize_copy_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/io/initialize_spec.rb +33 -16
- data/spec/framework_spec/app/spec/core/io/inspect_spec.rb +4 -15
- data/spec/framework_spec/app/spec/core/io/internal_encoding_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/io_spec.rb +1 -5
- data/spec/framework_spec/app/spec/core/io/ioctl_spec.rb +42 -5
- data/spec/framework_spec/app/spec/core/io/isatty_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/io/lineno_spec.rb +65 -52
- data/spec/framework_spec/app/spec/core/io/lines_spec.rb +28 -22
- data/spec/framework_spec/app/spec/core/io/new_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/io/open_spec.rb +52 -49
- data/spec/framework_spec/app/spec/core/io/output_spec.rb +22 -14
- data/spec/framework_spec/app/spec/core/io/pid_spec.rb +20 -11
- data/spec/framework_spec/app/spec/core/io/pipe_spec.rb +10 -1
- data/spec/framework_spec/app/spec/core/io/popen_spec.rb +107 -37
- data/spec/framework_spec/app/spec/core/io/pos_spec.rb +5 -44
- data/spec/framework_spec/app/spec/core/io/print_spec.rb +56 -59
- data/spec/framework_spec/app/spec/core/io/printf_spec.rb +25 -19
- data/spec/framework_spec/app/spec/core/io/putc_spec.rb +5 -43
- data/spec/framework_spec/app/spec/core/io/puts_spec.rb +28 -16
- data/spec/framework_spec/app/spec/core/io/read_nonblock_spec.rb +54 -3
- data/spec/framework_spec/app/spec/core/io/read_spec.rb +127 -50
- data/spec/framework_spec/app/spec/core/io/readbyte_spec.rb +29 -0
- data/spec/framework_spec/app/spec/core/io/readchar_spec.rb +31 -31
- data/spec/framework_spec/app/spec/core/io/readline_spec.rb +29 -25
- data/spec/framework_spec/app/spec/core/io/readlines_spec.rb +174 -146
- data/spec/framework_spec/app/spec/core/io/readpartial_spec.rb +16 -4
- data/spec/framework_spec/app/spec/core/io/reopen_spec.rb +226 -82
- data/spec/framework_spec/app/spec/core/io/rewind_spec.rb +8 -9
- data/spec/framework_spec/app/spec/core/io/seek_spec.rb +21 -29
- data/spec/framework_spec/app/spec/core/io/select_spec.rb +34 -7
- data/spec/framework_spec/app/spec/core/io/set_encoding_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/shared/codepoints.rb +46 -0
- data/spec/framework_spec/app/spec/core/io/shared/each.rb +97 -112
- data/spec/framework_spec/app/spec/core/io/shared/gets_ascii.rb +27 -0
- data/spec/framework_spec/app/spec/core/io/shared/new.rb +74 -99
- data/spec/framework_spec/app/spec/core/io/shared/pos.rb +43 -4
- data/spec/framework_spec/app/spec/core/io/shared/tty.rb +10 -7
- data/spec/framework_spec/app/spec/core/io/shared/write.rb +4 -4
- data/spec/framework_spec/app/spec/core/io/stat_spec.rb +20 -7
- data/spec/framework_spec/app/spec/core/io/sync_spec.rb +12 -10
- data/spec/framework_spec/app/spec/core/io/sysopen_spec.rb +32 -14
- data/spec/framework_spec/app/spec/core/io/sysread_spec.rb +12 -10
- data/spec/framework_spec/app/spec/core/io/sysseek_spec.rb +17 -42
- data/spec/framework_spec/app/spec/core/io/syswrite_spec.rb +10 -9
- data/spec/framework_spec/app/spec/core/io/tell_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/io/to_i_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/io/to_io_spec.rb +15 -10
- data/spec/framework_spec/app/spec/core/io/try_convert_spec.rb +47 -0
- data/spec/framework_spec/app/spec/core/io/tty_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/io/ungetbyte_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/io/ungetc_spec.rb +55 -48
- data/spec/framework_spec/app/spec/core/io/write_nonblock_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/io/write_spec.rb +17 -12
- data/spec/framework_spec/app/spec/core/kernel/Array_spec.rb +76 -31
- data/spec/framework_spec/app/spec/core/kernel/Complex_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/Float_spec.rb +18 -13
- data/spec/framework_spec/app/spec/core/kernel/Integer_spec.rb +243 -7
- data/spec/framework_spec/app/spec/core/kernel/Rational_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/String_spec.rb +65 -33
- data/spec/framework_spec/app/spec/core/kernel/__callee___spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/kernel/__id___spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/kernel/__method___spec.rb +41 -0
- data/spec/framework_spec/app/spec/core/kernel/__send___spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/abort_spec.rb +6 -3
- data/spec/framework_spec/app/spec/core/kernel/at_exit_spec.rb +16 -11
- data/spec/framework_spec/app/spec/core/kernel/autoload_spec.rb +127 -114
- data/spec/framework_spec/app/spec/core/kernel/backtick_spec.rb +24 -24
- data/spec/framework_spec/app/spec/core/kernel/binding_spec.rb +45 -23
- data/spec/framework_spec/app/spec/core/kernel/block_given_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/kernel/callcc_spec.rb +9 -65
- data/spec/framework_spec/app/spec/core/kernel/caller_spec.rb +162 -91
- data/spec/framework_spec/app/spec/core/kernel/case_compare_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/catch_spec.rb +70 -13
- data/spec/framework_spec/app/spec/core/kernel/chomp_spec.rb +19 -15
- data/spec/framework_spec/app/spec/core/kernel/chop_spec.rb +19 -15
- data/spec/framework_spec/app/spec/core/kernel/class_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/clone_spec.rb +8 -2
- data/spec/framework_spec/app/spec/core/kernel/comparison_spec.rb +33 -0
- data/spec/framework_spec/app/spec/core/kernel/const_lookup_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/{define_singleton_method.rb → define_singleton_method_spec.rb} +31 -9
- data/spec/framework_spec/app/spec/core/kernel/display_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/dup_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/enum_for_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/eql_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/kernel/equal_spec.rb +32 -3
- data/spec/framework_spec/app/spec/core/kernel/equal_value_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/kernel/eval_spec.rb +285 -182
- data/spec/framework_spec/app/spec/core/kernel/exec_spec.rb +18 -5
- data/spec/framework_spec/app/spec/core/kernel/exit_spec.rb +70 -4
- data/spec/framework_spec/app/spec/core/kernel/extend_spec.rb +29 -7
- data/spec/framework_spec/app/spec/core/kernel/fail_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/kernel/fixtures/__method__.rb +25 -0
- data/spec/framework_spec/app/spec/core/kernel/fixtures/autoload_d.rb +5 -0
- data/spec/framework_spec/app/spec/core/kernel/fixtures/caller_fixture1.rb +1 -1
- data/spec/framework_spec/app/spec/core/kernel/fixtures/classes.rb +173 -67
- data/spec/framework_spec/app/spec/core/kernel/fixtures/eval_locals.rb +6 -0
- data/spec/framework_spec/app/spec/core/kernel/fixtures/test.rb +80 -80
- data/spec/framework_spec/app/spec/core/kernel/fork_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/kernel/format_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/freeze_spec.rb +75 -37
- data/spec/framework_spec/app/spec/core/kernel/frozen_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/getc_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/kernel/gets_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/global_variables_spec.rb +24 -12
- data/spec/framework_spec/app/spec/core/kernel/gsub_spec.rb +76 -72
- data/spec/framework_spec/app/spec/core/kernel/hash_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/id_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/initialize_clone_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/initialize_copy_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/initialize_dup_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/inspect_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/instance_eval_spec.rb +154 -113
- data/spec/framework_spec/app/spec/core/kernel/instance_of_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/kernel/instance_variable_defined_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/kernel/instance_variable_get_spec.rb +16 -2
- data/spec/framework_spec/app/spec/core/kernel/instance_variable_set_spec.rb +25 -12
- data/spec/framework_spec/app/spec/core/kernel/instance_variables_spec.rb +48 -3
- data/spec/framework_spec/app/spec/core/kernel/is_a_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/kernel/iterator_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/kind_of_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/kernel/lambda_spec.rb +68 -7
- data/spec/framework_spec/app/spec/core/kernel/load_spec.rb +22 -217
- data/spec/framework_spec/app/spec/core/kernel/local_variables_spec.rb +38 -18
- data/spec/framework_spec/app/spec/core/kernel/loop_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/kernel/match_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/method_missing_spec.rb +9 -54
- data/spec/framework_spec/app/spec/core/kernel/method_spec.rb +29 -31
- data/spec/framework_spec/app/spec/core/kernel/methods_spec.rb +93 -78
- data/spec/framework_spec/app/spec/core/kernel/nil_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/not_match_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/object_id_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/kernel/open_spec.rb +30 -32
- data/spec/framework_spec/app/spec/core/kernel/p_spec.rb +29 -29
- data/spec/framework_spec/app/spec/core/kernel/print_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/printf_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/private_methods_spec.rb +82 -14
- data/spec/framework_spec/app/spec/core/kernel/proc_spec.rb +22 -4
- data/spec/framework_spec/app/spec/core/kernel/protected_methods_spec.rb +44 -2
- data/spec/framework_spec/app/spec/core/kernel/public_method_spec.rb +37 -0
- data/spec/framework_spec/app/spec/core/kernel/public_methods_spec.rb +70 -12
- data/spec/framework_spec/app/spec/core/kernel/public_send_spec.rb +76 -0
- data/spec/framework_spec/app/spec/core/kernel/putc_spec.rb +31 -4
- data/spec/framework_spec/app/spec/core/kernel/puts_spec.rb +100 -87
- data/spec/framework_spec/app/spec/core/kernel/raise_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/kernel/rand_spec.rb +39 -13
- data/spec/framework_spec/app/spec/core/kernel/readline_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/readlines_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/remove_instance_variable_spec.rb +32 -2
- data/spec/framework_spec/app/spec/core/kernel/require_relative_spec.rb +154 -0
- data/spec/framework_spec/app/spec/core/kernel/require_spec.rb +20 -289
- data/spec/framework_spec/app/spec/core/kernel/respond_to_missing_spec.rb +88 -0
- data/spec/framework_spec/app/spec/core/kernel/respond_to_spec.rb +41 -33
- data/spec/framework_spec/app/spec/core/kernel/scan_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/kernel/select_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/send_spec.rb +31 -65
- data/spec/framework_spec/app/spec/core/kernel/set_trace_func_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/shared/__method__.rb +6 -7
- data/spec/framework_spec/app/spec/core/kernel/shared/abort.rb +26 -0
- data/spec/framework_spec/app/spec/core/kernel/shared/lambda.rb +12 -25
- data/spec/framework_spec/app/spec/core/kernel/shared/load.rb +93 -0
- data/spec/framework_spec/app/spec/core/kernel/shared/method.rb +59 -0
- data/spec/framework_spec/app/spec/core/kernel/shared/object_id.rb +22 -6
- data/spec/framework_spec/app/spec/core/kernel/shared/require.rb +529 -0
- data/spec/framework_spec/app/spec/core/kernel/shared/send.rb +110 -0
- data/spec/framework_spec/app/spec/core/kernel/singleton_class_spec.rb +30 -0
- data/spec/framework_spec/app/spec/core/kernel/singleton_method_added_spec.rb +6 -5
- data/spec/framework_spec/app/spec/core/kernel/singleton_method_removed_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/kernel/singleton_method_undefined_spec.rb +4 -5
- data/spec/framework_spec/app/spec/core/kernel/singleton_methods_spec.rb +179 -58
- data/spec/framework_spec/app/spec/core/kernel/sleep_spec.rb +18 -19
- data/spec/framework_spec/app/spec/core/kernel/spawn_spec.rb +152 -0
- data/spec/framework_spec/app/spec/core/kernel/split_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/kernel/sprintf_spec.rb +351 -5
- data/spec/framework_spec/app/spec/core/kernel/srand_spec.rb +33 -6
- data/spec/framework_spec/app/spec/core/kernel/sub_spec.rb +19 -15
- data/spec/framework_spec/app/spec/core/kernel/syscall_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/system_spec.rb +90 -61
- data/spec/framework_spec/app/spec/core/kernel/taint_spec.rb +9 -4
- data/spec/framework_spec/app/spec/core/kernel/tainted_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/kernel/tap_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/kernel/test_spec.rb +36 -16
- data/spec/framework_spec/app/spec/core/kernel/throw_spec.rb +29 -24
- data/spec/framework_spec/app/spec/core/kernel/to_a_spec.rb +17 -15
- data/spec/framework_spec/app/spec/core/kernel/to_enum_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/kernel/to_s_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/trace_var_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/trap_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/trust_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/type_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/untaint_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/untrace_var_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/untrust_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/untrusted_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/kernel/warn_spec.rb +59 -60
- data/spec/framework_spec/app/spec/core/marshal/dump_spec.rb +314 -70
- data/spec/framework_spec/app/spec/core/marshal/fixtures/marshal_data.rb +165 -0
- data/spec/framework_spec/app/spec/core/marshal/fixtures/random.dump +0 -0
- data/spec/framework_spec/app/spec/core/marshal/load_spec.rb +483 -170
- data/spec/framework_spec/app/spec/core/marshal/restore_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/matchdata/begin_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/captures_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/element_reference_spec.rb +3 -1
- data/spec/framework_spec/app/spec/core/matchdata/end_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/matchdata/eql_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/matchdata/equal_value_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/matchdata/hash_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/matchdata/initialize_copy_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/inspect_spec.rb +19 -1
- data/spec/framework_spec/app/spec/core/matchdata/length_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/matchdata/names_spec.rb +3 -0
- data/spec/framework_spec/app/spec/core/matchdata/offset_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/post_match_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/matchdata/pre_match_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/regexp_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/matchdata/select_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/shared/eql.rb +26 -0
- data/spec/framework_spec/app/spec/core/matchdata/size_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/matchdata/string_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/to_a_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/matchdata/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/values_at_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/matchdata/versions/element_reference_1.9.rb +35 -0
- data/spec/framework_spec/app/spec/core/matchdata/versions/names_1.9.rb +33 -0
- data/spec/framework_spec/app/spec/core/math/acos_spec.rb +31 -31
- data/spec/framework_spec/app/spec/core/math/acosh_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/math/asin_spec.rb +15 -15
- data/spec/framework_spec/app/spec/core/math/asinh_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/math/atan2_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/math/atan_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/math/atanh_spec.rb +8 -64
- data/spec/framework_spec/app/spec/core/math/cbrt_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/math/constants_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/math/cos_spec.rb +13 -13
- data/spec/framework_spec/app/spec/core/math/cosh_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/math/erf_spec.rb +14 -14
- data/spec/framework_spec/app/spec/core/math/erfc_spec.rb +12 -12
- data/spec/framework_spec/app/spec/core/math/exp_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/math/fixtures/classes.rb +2 -2
- data/spec/framework_spec/app/spec/core/math/frexp_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/math/gamma_spec.rb +71 -0
- data/spec/framework_spec/app/spec/core/math/hypot_spec.rb +11 -11
- data/spec/framework_spec/app/spec/core/math/ldexp_spec.rb +10 -10
- data/spec/framework_spec/app/spec/core/math/lgamma_spec.rb +87 -0
- data/spec/framework_spec/app/spec/core/math/log10_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/math/log2_spec.rb +30 -3
- data/spec/framework_spec/app/spec/core/math/log_spec.rb +30 -11
- data/spec/framework_spec/app/spec/core/math/sin_spec.rb +15 -15
- data/spec/framework_spec/app/spec/core/math/sinh_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/math/sqrt_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/math/tan_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/math/tanh_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/method/arity_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/method/call_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/method/clone_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/method/element_reference_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/method/eql_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/method/equal_value_spec.rb +3 -40
- data/spec/framework_spec/app/spec/core/method/fixtures/classes.rb +104 -13
- data/spec/framework_spec/app/spec/core/method/fixtures/classes_1.9.rb +12 -0
- data/spec/framework_spec/app/spec/core/method/hash_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/method/inspect_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/method/name_spec.rb +19 -5
- data/spec/framework_spec/app/spec/core/method/owner_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/method/parameters_spec.rb +3 -0
- data/spec/framework_spec/app/spec/core/method/receiver_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/method/shared/call.rb +2 -2
- data/spec/framework_spec/app/spec/core/method/shared/eql.rb +102 -0
- data/spec/framework_spec/app/spec/core/method/shared/to_s.rb +5 -5
- data/spec/framework_spec/app/spec/core/method/source_location_spec.rb +50 -0
- data/spec/framework_spec/app/spec/core/method/to_proc_spec.rb +20 -2
- data/spec/framework_spec/app/spec/core/method/to_s_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/method/unbind_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/method/versions/parameters_1.9.rb +189 -0
- data/spec/framework_spec/app/spec/core/module/alias_method_spec.rb +20 -8
- data/spec/framework_spec/app/spec/core/module/allocate_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/module/ancestors_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/append_features_spec.rb +15 -4
- data/spec/framework_spec/app/spec/core/module/attr_accessor_spec.rb +16 -7
- data/spec/framework_spec/app/spec/core/module/attr_reader_spec.rb +14 -5
- data/spec/framework_spec/app/spec/core/module/attr_spec.rb +61 -63
- data/spec/framework_spec/app/spec/core/module/attr_writer_spec.rb +23 -12
- data/spec/framework_spec/app/spec/core/module/autoload_spec.rb +177 -84
- data/spec/framework_spec/app/spec/core/module/case_compare_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/class_eval_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/module/class_exec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/module/class_variable_defined_spec.rb +22 -7
- data/spec/framework_spec/app/spec/core/module/class_variable_get_spec.rb +27 -12
- data/spec/framework_spec/app/spec/core/module/class_variable_set_spec.rb +37 -15
- data/spec/framework_spec/app/spec/core/module/class_variables_spec.rb +50 -17
- data/spec/framework_spec/app/spec/core/module/comparison_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/module/const_defined_spec.rb +41 -5
- data/spec/framework_spec/app/spec/core/module/const_get_spec.rb +14 -2
- data/spec/framework_spec/app/spec/core/module/const_missing_spec.rb +8 -2
- data/spec/framework_spec/app/spec/core/module/const_set_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/module/constants_spec.rb +26 -2
- data/spec/framework_spec/app/spec/core/module/define_method_spec.rb +283 -15
- data/spec/framework_spec/app/spec/core/module/eql_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/equal_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/equal_value_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/extend_object_spec.rb +23 -28
- data/spec/framework_spec/app/spec/core/module/extended_spec.rb +18 -10
- data/spec/framework_spec/app/spec/core/module/fixtures/autoload.rb +1 -1
- data/spec/framework_spec/app/spec/core/module/fixtures/autoload_ex1.rb +16 -0
- data/spec/framework_spec/app/spec/core/module/fixtures/autoload_k.rb +3 -1
- data/spec/framework_spec/app/spec/core/module/fixtures/autoload_s.rb +5 -0
- data/spec/framework_spec/app/spec/core/module/fixtures/autoload_w2.rb +1 -0
- data/spec/framework_spec/app/spec/core/module/fixtures/classes.rb +97 -0
- data/spec/framework_spec/app/spec/core/module/fixtures/name.rb +10 -0
- data/spec/framework_spec/app/spec/core/module/freeze_spec.rb +33 -13
- data/spec/framework_spec/app/spec/core/module/gt_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/module/gte_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/include_spec.rb +159 -33
- data/spec/framework_spec/app/spec/core/module/included_modules_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/module/included_spec.rb +12 -4
- data/spec/framework_spec/app/spec/core/module/initialize_copy_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/module/initialize_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/instance_method_spec.rb +16 -7
- data/spec/framework_spec/app/spec/core/module/instance_methods_spec.rb +51 -17
- data/spec/framework_spec/app/spec/core/module/lt_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/module/lte_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/method_added_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/module/method_defined_spec.rb +13 -6
- data/spec/framework_spec/app/spec/core/module/method_removed_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/method_undefined_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/module_eval_spec.rb +7 -8
- data/spec/framework_spec/app/spec/core/module/module_exec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/module/module_function_spec.rb +82 -76
- data/spec/framework_spec/app/spec/core/module/name_spec.rb +24 -6
- data/spec/framework_spec/app/spec/core/module/nesting_spec.rb +13 -9
- data/spec/framework_spec/app/spec/core/module/new_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/private_class_method_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/module/private_instance_methods_spec.rb +26 -2
- data/spec/framework_spec/app/spec/core/module/private_method_defined_spec.rb +16 -6
- data/spec/framework_spec/app/spec/core/module/private_spec.rb +21 -3
- data/spec/framework_spec/app/spec/core/module/protected_instance_methods_spec.rb +66 -18
- data/spec/framework_spec/app/spec/core/module/protected_method_defined_spec.rb +40 -18
- data/spec/framework_spec/app/spec/core/module/protected_spec.rb +24 -7
- data/spec/framework_spec/app/spec/core/module/public_class_method_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/module/public_instance_method_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/module/public_instance_methods_spec.rb +38 -14
- data/spec/framework_spec/app/spec/core/module/public_method_defined_spec.rb +28 -6
- data/spec/framework_spec/app/spec/core/module/public_spec.rb +26 -2
- data/spec/framework_spec/app/spec/core/module/remove_class_variable_spec.rb +46 -2
- data/spec/framework_spec/app/spec/core/module/remove_const_spec.rb +10 -3
- data/spec/framework_spec/app/spec/core/module/remove_method_spec.rb +10 -10
- data/spec/framework_spec/app/spec/core/module/shared/class_eval.rb +36 -14
- data/spec/framework_spec/app/spec/core/module/shared/class_exec.rb +24 -0
- data/spec/framework_spec/app/spec/core/module/shared/equal_value.rb +1 -1
- data/spec/framework_spec/app/spec/core/module/to_s_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/module/undef_method_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/mutex/lock_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/mutex/locked_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/mutex/sleep_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/mutex/synchronize_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/mutex/try_lock_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/mutex/unlock_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/nil/and_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/inspect_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/nil_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/or_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/rationalize_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/nil/to_a_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/to_c_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/nil/to_f_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/nil/to_i_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/nil/to_r_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/nil/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/nil/xor_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/numeric/abs2_spec.rb +36 -0
- data/spec/framework_spec/app/spec/core/numeric/abs_spec.rb +3 -17
- data/spec/framework_spec/app/spec/core/numeric/angle_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/arg_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/ceil_spec.rb +10 -9
- data/spec/framework_spec/app/spec/core/numeric/coerce_spec.rb +23 -6
- data/spec/framework_spec/app/spec/core/numeric/comparison_spec.rb +35 -6
- data/spec/framework_spec/app/spec/core/numeric/conj_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/conjugate_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/denominator_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/numeric/div_spec.rb +22 -10
- data/spec/framework_spec/app/spec/core/numeric/divmod_spec.rb +19 -8
- data/spec/framework_spec/app/spec/core/numeric/eql_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/fdiv_spec.rb +37 -0
- data/spec/framework_spec/app/spec/core/numeric/fixtures/classes.rb +16 -4
- data/spec/framework_spec/app/spec/core/numeric/floor_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/i_spec.rb +17 -0
- data/spec/framework_spec/app/spec/core/numeric/imag_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/imaginary_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/initialize_copy_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/integer_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/magnitude_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/numeric/modulo_spec.rb +33 -9
- data/spec/framework_spec/app/spec/core/numeric/nonzero_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/numeric/numerator_spec.rb +35 -0
- data/spec/framework_spec/app/spec/core/numeric/phase_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/polar_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/quo_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/rationalize_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/numeric/real_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/numeric/rect_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/rectangular_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/numeric/remainder_spec.rb +11 -11
- data/spec/framework_spec/app/spec/core/numeric/round_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/shared/abs.rb +19 -0
- data/spec/framework_spec/app/spec/core/numeric/shared/rect.rb +48 -0
- data/spec/framework_spec/app/spec/core/numeric/singleton_method_added_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/numeric/step_spec.rb +215 -162
- data/spec/framework_spec/app/spec/core/numeric/to_c_spec.rb +47 -0
- data/spec/framework_spec/app/spec/core/numeric/to_int_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/numeric/truncate_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/numeric/uminus_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/numeric/uplus_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/numeric/zero_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/object/clone_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/object/dup_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/object/fixtures/classes.rb +17 -0
- data/spec/framework_spec/app/spec/core/object/initialize_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/object/instance_exec_spec.rb +101 -0
- data/spec/framework_spec/app/spec/core/object/instance_of_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/object/is_a_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/object/kind_of_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/object/match_spec.rb +25 -10
- data/spec/framework_spec/app/spec/core/object/metaclass_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/object/new_spec.rb +18 -2
- data/spec/framework_spec/app/spec/core/object/shared/kind_of.rb +3 -3
- data/spec/framework_spec/app/spec/core/objectspace/_id2ref_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/objectspace/add_finalizer_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/objectspace/call_finalizer_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/objectspace/count_objects_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/objectspace/define_finalizer_spec.rb +44 -3
- data/spec/framework_spec/app/spec/core/objectspace/each_object_spec.rb +27 -5
- data/spec/framework_spec/app/spec/core/objectspace/finalizers_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/objectspace/fixtures.rb +5 -0
- data/spec/framework_spec/app/spec/core/objectspace/garbage_collect_spec.rb +22 -1
- data/spec/framework_spec/app/spec/core/objectspace/remove_finalizer_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/objectspace/undefine_finalizer_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/precision/included_spec.rb +14 -12
- data/spec/framework_spec/app/spec/core/precision/prec_f_spec.rb +9 -8
- data/spec/framework_spec/app/spec/core/precision/prec_i_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/precision/prec_spec.rb +19 -14
- data/spec/framework_spec/app/spec/core/proc/arity_spec.rb +104 -53
- data/spec/framework_spec/app/spec/core/proc/binding_spec.rb +14 -14
- data/spec/framework_spec/app/spec/core/proc/block_pass_spec.rb +21 -1
- data/spec/framework_spec/app/spec/core/proc/call_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/proc/case_compare_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/proc/clone_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/proc/curry_spec.rb +142 -0
- data/spec/framework_spec/app/spec/core/proc/dup_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/proc/element_reference_spec.rb +8 -2
- data/spec/framework_spec/app/spec/core/proc/eql_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/proc/equal_value_spec.rb +4 -12
- data/spec/framework_spec/app/spec/core/proc/fixtures/common.rb +42 -0
- data/spec/framework_spec/app/spec/core/proc/fixtures/source_location.rb +51 -0
- data/spec/framework_spec/app/spec/core/proc/hash_spec.rb +24 -0
- data/spec/framework_spec/app/spec/core/proc/lambda_spec.rb +62 -0
- data/spec/framework_spec/app/spec/core/proc/new_spec.rb +135 -46
- data/spec/framework_spec/app/spec/core/proc/parameters_spec.rb +2 -0
- data/spec/framework_spec/app/spec/core/proc/shared/call.rb +86 -34
- data/spec/framework_spec/app/spec/core/proc/shared/call_arguments.rb +7 -0
- data/spec/framework_spec/app/spec/core/proc/shared/equal.rb +93 -0
- data/spec/framework_spec/app/spec/core/proc/source_location_spec.rb +64 -0
- data/spec/framework_spec/app/spec/core/proc/to_proc_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/proc/to_s_spec.rb +16 -5
- data/spec/framework_spec/app/spec/core/proc/versions/call_1.8.7.rb +1 -0
- data/spec/framework_spec/app/spec/core/proc/versions/call_1.9.rb +1 -0
- data/spec/framework_spec/app/spec/core/proc/versions/parameters_1.9.rb +73 -0
- data/spec/framework_spec/app/spec/core/proc/yield_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/process/abort_spec.rb +16 -9
- data/spec/framework_spec/app/spec/core/process/constants_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/process/daemon_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/process/detach_spec.rb +5 -9
- data/spec/framework_spec/app/spec/core/process/egid_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/process/euid_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/process/exec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/process/exit_spec.rb +9 -1
- data/spec/framework_spec/app/spec/core/process/fork_spec.rb +38 -26
- data/spec/framework_spec/app/spec/core/process/getpgid_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/process/getpgrp_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/process/getpriority_spec.rb +8 -9
- data/spec/framework_spec/app/spec/core/process/getrlimit_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/process/gid/change_privilege_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/eid_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/process/gid/grant_privilege_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/re_exchange_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/re_exchangeable_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/rid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/sid_available_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid/switch_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/gid_spec.rb +11 -7
- data/spec/framework_spec/app/spec/core/process/groups_spec.rb +15 -17
- data/spec/framework_spec/app/spec/core/process/initgroups_spec.rb +3 -6
- data/spec/framework_spec/app/spec/core/process/kill_spec.rb +21 -17
- data/spec/framework_spec/app/spec/core/process/maxgroups_spec.rb +12 -5
- data/spec/framework_spec/app/spec/core/process/pid_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/process/ppid_spec.rb +16 -15
- data/spec/framework_spec/app/spec/core/process/setpgid_spec.rb +16 -21
- data/spec/framework_spec/app/spec/core/process/setpgrp_spec.rb +3 -8
- data/spec/framework_spec/app/spec/core/process/setpriority_spec.rb +42 -60
- data/spec/framework_spec/app/spec/core/process/setrlimit_spec.rb +38 -46
- data/spec/framework_spec/app/spec/core/process/setsid_spec.rb +20 -22
- data/spec/framework_spec/app/spec/core/process/spawn_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/process/status/_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/coredump_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/equal_value_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/exited_spec.rb +38 -0
- data/spec/framework_spec/app/spec/core/process/status/exitstatus_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/process/status/inspect_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/pid_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/process/status/right_shift_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/signaled_spec.rb +36 -0
- data/spec/framework_spec/app/spec/core/process/status/stopped_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/stopsig_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/success_spec.rb +53 -0
- data/spec/framework_spec/app/spec/core/process/status/termsig_spec.rb +41 -0
- data/spec/framework_spec/app/spec/core/process/status/to_i_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/to_int_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/status/to_s_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/getegid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/geteuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/getgid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/getuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/issetugid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setegid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/seteuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setgid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setregid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setresgid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setresuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setreuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setrgid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setruid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/sys/setuid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/times_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/process/uid/change_privilege_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/eid_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/process/uid/grant_privilege_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/re_exchange_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/re_exchangeable_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/rid_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/sid_available_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid/switch_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/process/uid_spec.rb +11 -7
- data/spec/framework_spec/app/spec/core/process/wait2_spec.rb +7 -6
- data/spec/framework_spec/app/spec/core/process/wait_spec.rb +25 -7
- data/spec/framework_spec/app/spec/core/process/waitall_spec.rb +10 -8
- data/spec/framework_spec/app/spec/core/process/waitpid2_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/process/waitpid_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/random/bytes_spec.rb +40 -0
- data/spec/framework_spec/app/spec/core/random/equal_value_spec.rb +39 -0
- data/spec/framework_spec/app/spec/core/random/new_seed_spec.rb +27 -0
- data/spec/framework_spec/app/spec/core/random/new_spec.rb +33 -0
- data/spec/framework_spec/app/spec/core/random/rand_spec.rb +218 -0
- data/spec/framework_spec/app/spec/core/random/seed_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/random/srand_spec.rb +43 -0
- data/spec/framework_spec/app/spec/core/range/begin_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/case_compare_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/cover_spec.rb +57 -0
- data/spec/framework_spec/app/spec/core/range/each_spec.rb +5 -4
- data/spec/framework_spec/app/spec/core/range/end_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/eql_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/equal_value_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/exclude_end_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/range/first_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/hash_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/include_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/initialize_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/range/inspect_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/last_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/max_spec.rb +55 -0
- data/spec/framework_spec/app/spec/core/range/member_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/min_spec.rb +55 -0
- data/spec/framework_spec/app/spec/core/range/new_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/range/shared/equal_value.rb +2 -2
- data/spec/framework_spec/app/spec/core/range/shared/include.rb +9 -0
- data/spec/framework_spec/app/spec/core/range/step_spec.rb +4 -3
- data/spec/framework_spec/app/spec/core/range/to_a_spec.rb +10 -3
- data/spec/framework_spec/app/spec/core/range/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/rational/Rational_spec.rb +35 -0
- data/spec/framework_spec/app/spec/core/rational/abs_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/ceil_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/coerce_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/comparison_spec.rb +23 -0
- data/spec/framework_spec/app/spec/core/rational/denominator_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/div_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/rational/divide_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/rational/divmod_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/rational/equal_value_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/rational/exponent_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/rational/fdiv_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/floor_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/hash_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/initialize_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/inspect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/integer_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/rational/magnitude_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/marshal_dump_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/marshal_load_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/minus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/modulo_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/multiply_spec.rb +19 -0
- data/spec/framework_spec/app/spec/core/rational/numerator_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/plus_spec.rb +18 -0
- data/spec/framework_spec/app/spec/core/rational/quo_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/rationalize_spec.rb +33 -0
- data/spec/framework_spec/app/spec/core/rational/remainder_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/round_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/to_f_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/to_i_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/to_r_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/to_s_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/truncate_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/rational/zero_spec.rb +15 -0
- data/spec/framework_spec/app/spec/core/regexp/case_compare_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/casefold_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/compile_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/encoding_spec.rb +56 -0
- data/spec/framework_spec/app/spec/core/regexp/eql_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/equal_value_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/escape_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/regexp/fixed_encoding_spec.rb +36 -0
- data/spec/framework_spec/app/spec/core/regexp/hash_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/initialize_copy_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/initialize_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/inspect_spec.rb +9 -1
- data/spec/framework_spec/app/spec/core/regexp/kcode_spec.rb +17 -16
- data/spec/framework_spec/app/spec/core/regexp/last_match_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/regexp/match_spec.rb +31 -3
- data/spec/framework_spec/app/spec/core/regexp/named_captures_spec.rb +1 -0
- data/spec/framework_spec/app/spec/core/regexp/names_spec.rb +1 -0
- data/spec/framework_spec/app/spec/core/regexp/new_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/options_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/regexp/quote_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/regexp/shared/match.rb +2 -2
- data/spec/framework_spec/app/spec/core/regexp/shared/new.rb +65 -53
- data/spec/framework_spec/app/spec/core/regexp/source_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/regexp/try_convert_spec.rb +21 -0
- data/spec/framework_spec/app/spec/core/regexp/union_spec.rb +18 -2
- data/spec/framework_spec/app/spec/core/regexp/versions/named_captures_1.9.rb +35 -0
- data/spec/framework_spec/app/spec/core/regexp/versions/names_1.9.rb +29 -0
- data/spec/framework_spec/app/spec/core/signal/list_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/signal/trap_spec.rb +106 -1
- data/spec/framework_spec/app/spec/core/string/allocate_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/string/append_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/ascii_only_spec.rb +44 -29
- data/spec/framework_spec/app/spec/core/string/bytes_spec.rb +25 -18
- data/spec/framework_spec/app/spec/core/string/bytesize_spec.rb +12 -12
- data/spec/framework_spec/app/spec/core/string/capitalize_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/string/case_compare_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/string/casecmp_spec.rb +117 -64
- data/spec/framework_spec/app/spec/core/string/center_spec.rb +24 -18
- data/spec/framework_spec/app/spec/core/string/chars_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/string/chomp_spec.rb +68 -39
- data/spec/framework_spec/app/spec/core/string/chop_spec.rb +34 -56
- data/spec/framework_spec/app/spec/core/string/chr_spec.rb +44 -0
- data/spec/framework_spec/app/spec/core/string/clear_spec.rb +39 -0
- data/spec/framework_spec/app/spec/core/string/codepoints_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/string/comparison_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/string/concat_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/count_spec.rb +26 -11
- data/spec/framework_spec/app/spec/core/string/crypt_spec.rb +35 -35
- data/spec/framework_spec/app/spec/core/string/delete_spec.rb +25 -8
- data/spec/framework_spec/app/spec/core/string/downcase_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/string/dump_spec.rb +13 -4
- data/spec/framework_spec/app/spec/core/string/each_byte_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/each_char_spec.rb +3 -29
- data/spec/framework_spec/app/spec/core/string/each_codepoint_spec.rb +8 -0
- data/spec/framework_spec/app/spec/core/string/each_line_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/each_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/element_reference_spec.rb +9 -3
- data/spec/framework_spec/app/spec/core/string/element_set_spec.rb +54 -10
- data/spec/framework_spec/app/spec/core/string/empty_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/string/encode_spec.rb +114 -0
- data/spec/framework_spec/app/spec/core/string/encoding_spec.rb +181 -0
- data/spec/framework_spec/app/spec/core/string/end_with_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/entries_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/string/eql_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/string/equal_value_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/string/fixtures/classes.rb +12 -9
- data/spec/framework_spec/app/spec/core/string/fixtures/iso-8859-9-encoding.rb +9 -0
- data/spec/framework_spec/app/spec/core/string/fixtures/utf-8-encoding.rb +7 -0
- data/spec/framework_spec/app/spec/core/string/force_encoding_spec.rb +61 -0
- data/spec/framework_spec/app/spec/core/string/getbyte_spec.rb +63 -0
- data/spec/framework_spec/app/spec/core/string/gsub_spec.rb +228 -75
- data/spec/framework_spec/app/spec/core/string/hash_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/string/hex_spec.rb +23 -9
- data/spec/framework_spec/app/spec/core/string/include_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/string/index_spec.rb +46 -52
- data/spec/framework_spec/app/spec/core/string/initialize_spec.rb +19 -21
- data/spec/framework_spec/app/spec/core/string/insert_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/inspect_spec.rb +661 -41
- data/spec/framework_spec/app/spec/core/string/intern_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/length_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/lines_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/string/ljust_spec.rb +18 -12
- data/spec/framework_spec/app/spec/core/string/lstrip_spec.rb +23 -14
- data/spec/framework_spec/app/spec/core/string/match_spec.rb +11 -11
- data/spec/framework_spec/app/spec/core/string/modulo_spec.rb +103 -45
- data/spec/framework_spec/app/spec/core/string/multiply_spec.rb +10 -10
- data/spec/framework_spec/app/spec/core/string/new_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/next_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/oct_spec.rb +59 -16
- data/spec/framework_spec/app/spec/core/string/ord_spec.rb +32 -0
- data/spec/framework_spec/app/spec/core/string/partition_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/string/plus_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/string/replace_spec.rb +18 -13
- data/spec/framework_spec/app/spec/core/string/reverse_spec.rb +16 -11
- data/spec/framework_spec/app/spec/core/string/rindex_spec.rb +75 -69
- data/spec/framework_spec/app/spec/core/string/rjust_spec.rb +18 -12
- data/spec/framework_spec/app/spec/core/string/rpartition_spec.rb +8 -3
- data/spec/framework_spec/app/spec/core/string/rstrip_spec.rb +52 -20
- data/spec/framework_spec/app/spec/core/string/scan_spec.rb +48 -23
- data/spec/framework_spec/app/spec/core/string/setbyte_spec.rb +55 -0
- data/spec/framework_spec/app/spec/core/string/shared/chars.rb +70 -0
- data/spec/framework_spec/app/spec/core/string/shared/codepoints.rb +66 -0
- data/spec/framework_spec/app/spec/core/string/shared/concat.rb +9 -6
- data/spec/framework_spec/app/spec/core/string/shared/each_line.rb +27 -6
- data/spec/framework_spec/app/spec/core/string/shared/encode.rb +112 -0
- data/spec/framework_spec/app/spec/core/string/shared/slice.rb +13 -11
- data/spec/framework_spec/app/spec/core/string/shared/succ.rb +3 -3
- data/spec/framework_spec/app/spec/core/string/shared/to_s.rb +1 -1
- data/spec/framework_spec/app/spec/core/string/shared/to_sym.rb +32 -0
- data/spec/framework_spec/app/spec/core/string/shared/versions/slice_1.9.rb +78 -0
- data/spec/framework_spec/app/spec/core/string/size_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/slice_spec.rb +54 -42
- data/spec/framework_spec/app/spec/core/string/split_spec.rb +109 -60
- data/spec/framework_spec/app/spec/core/string/squeeze_spec.rb +21 -7
- data/spec/framework_spec/app/spec/core/string/start_with_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/strip_spec.rb +49 -12
- data/spec/framework_spec/app/spec/core/string/sub_spec.rb +91 -43
- data/spec/framework_spec/app/spec/core/string/succ_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/sum_spec.rb +7 -2
- data/spec/framework_spec/app/spec/core/string/swapcase_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/string/to_a_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/string/to_c_spec.rb +101 -0
- data/spec/framework_spec/app/spec/core/string/to_f_spec.rb +8 -16
- data/spec/framework_spec/app/spec/core/string/to_i_spec.rb +38 -16
- data/spec/framework_spec/app/spec/core/string/to_r_spec.rb +60 -0
- data/spec/framework_spec/app/spec/core/string/to_s_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/to_str_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/to_sym_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/string/tr_s_spec.rb +8 -8
- data/spec/framework_spec/app/spec/core/string/tr_spec.rb +37 -5
- data/spec/framework_spec/app/spec/core/string/try_convert_spec.rb +15 -17
- data/spec/framework_spec/app/spec/core/string/unpack/a_spec.rb +51 -0
- data/spec/framework_spec/app/spec/core/string/unpack/at_spec.rb +29 -0
- data/spec/framework_spec/app/spec/core/string/unpack/b_spec.rb +184 -0
- data/spec/framework_spec/app/spec/core/string/unpack/c_spec.rb +63 -0
- data/spec/framework_spec/app/spec/core/string/unpack/comment_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/string/unpack/d_spec.rb +28 -0
- data/spec/framework_spec/app/spec/core/string/unpack/e_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/string/unpack/f_spec.rb +28 -0
- data/spec/framework_spec/app/spec/core/string/unpack/g_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/string/unpack/h_spec.rb +124 -0
- data/spec/framework_spec/app/spec/core/string/unpack/i_spec.rb +72 -0
- data/spec/framework_spec/app/spec/core/string/unpack/l_spec.rb +216 -0
- data/spec/framework_spec/app/spec/core/string/unpack/m_spec.rb +165 -0
- data/spec/framework_spec/app/spec/core/string/unpack/n_spec.rb +18 -0
- data/spec/framework_spec/app/spec/core/string/unpack/percent_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/string/unpack/q_spec.rb +42 -0
- data/spec/framework_spec/app/spec/core/string/unpack/s_spec.rb +72 -0
- data/spec/framework_spec/app/spec/core/string/unpack/shared/basic.rb +25 -0
- data/spec/framework_spec/app/spec/core/string/unpack/shared/float.rb +267 -0
- data/spec/framework_spec/app/spec/core/string/unpack/shared/integer.rb +343 -0
- data/spec/framework_spec/app/spec/core/string/unpack/shared/string.rb +51 -0
- data/spec/framework_spec/app/spec/core/string/unpack/shared/unicode.rb +60 -0
- data/spec/framework_spec/app/spec/core/string/unpack/u_spec.rb +78 -0
- data/spec/framework_spec/app/spec/core/string/unpack/v_spec.rb +18 -0
- data/spec/framework_spec/app/spec/core/string/unpack/w_spec.rb +25 -0
- data/spec/framework_spec/app/spec/core/string/unpack/x_spec.rb +62 -0
- data/spec/framework_spec/app/spec/core/string/unpack/z_spec.rb +21 -0
- data/spec/framework_spec/app/spec/core/string/unpack_spec.rb +121 -32
- data/spec/framework_spec/app/spec/core/string/upcase_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/string/upto_spec.rb +21 -11
- data/spec/framework_spec/app/spec/core/string/valid_encoding_spec.rb +122 -0
- data/spec/framework_spec/app/spec/core/struct/each_pair_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/struct/each_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/struct/element_reference_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/struct/element_set_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/struct/eql_spec.rb +10 -4
- data/spec/framework_spec/app/spec/core/struct/equal_value_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/struct/fixtures/classes.rb +24 -8
- data/spec/framework_spec/app/spec/core/struct/hash_spec.rb +24 -10
- data/spec/framework_spec/app/spec/core/struct/initialize_copy_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/struct/initialize_spec.rb +9 -5
- data/spec/framework_spec/app/spec/core/struct/inspect_spec.rb +13 -6
- data/spec/framework_spec/app/spec/core/struct/length_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/struct/members_spec.rb +17 -7
- data/spec/framework_spec/app/spec/core/struct/new_spec.rb +61 -32
- data/spec/framework_spec/app/spec/core/struct/select_spec.rb +9 -9
- data/spec/framework_spec/app/spec/core/struct/shared/equal_value.rb +20 -5
- data/spec/framework_spec/app/spec/core/struct/shared/inspect.rb +13 -0
- data/spec/framework_spec/app/spec/core/struct/size_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/struct/struct_spec.rb +6 -6
- data/spec/framework_spec/app/spec/core/struct/tms/cstime_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/struct/tms/cutime_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/struct/tms/element_reference_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/struct/tms/members_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/struct/tms/new_spec.rb +5 -0
- data/spec/framework_spec/app/spec/core/struct/tms/stime_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/struct/tms/utime_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/struct/to_a_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/struct/to_s_spec.rb +6 -3
- data/spec/framework_spec/app/spec/core/struct/values_at_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/struct/values_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/symbol/all_symbols_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/symbol/capitalize_spec.rb +44 -0
- data/spec/framework_spec/app/spec/core/symbol/case_compare_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/casecmp_spec.rb +65 -0
- data/spec/framework_spec/app/spec/core/symbol/comparison_spec.rb +52 -0
- data/spec/framework_spec/app/spec/core/symbol/downcase_spec.rb +26 -0
- data/spec/framework_spec/app/spec/core/symbol/element_reference_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/empty_spec.rb +14 -0
- data/spec/framework_spec/app/spec/core/symbol/encoding_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/equal_value_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/id2name_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/inspect_spec.rb +19 -7
- data/spec/framework_spec/app/spec/core/symbol/intern_spec.rb +11 -0
- data/spec/framework_spec/app/spec/core/symbol/length_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/match_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/symbol/next_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/slice_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/succ_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/symbol/swapcase_spec.rb +34 -0
- data/spec/framework_spec/app/spec/core/symbol/to_i_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/to_int_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/to_proc_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/symbol/to_s_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/symbol/to_sym_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/symbol/upcase_spec.rb +22 -0
- data/spec/framework_spec/app/spec/core/systemexit/initialize_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/thread/abort_on_exception_spec.rb +14 -2
- data/spec/framework_spec/app/spec/core/thread/add_trace_func_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/thread/alive_spec.rb +18 -4
- data/spec/framework_spec/app/spec/core/thread/allocate_spec.rb +9 -0
- data/spec/framework_spec/app/spec/core/thread/backtrace_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/thread/critical_spec.rb +77 -75
- data/spec/framework_spec/app/spec/core/thread/current_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/thread/element_reference_spec.rb +14 -5
- data/spec/framework_spec/app/spec/core/thread/element_set_spec.rb +14 -5
- data/spec/framework_spec/app/spec/core/thread/exclusive_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/thread/exit_spec.rb +15 -5
- data/spec/framework_spec/app/spec/core/thread/fixtures/classes.rb +53 -40
- data/spec/framework_spec/app/spec/core/thread/fork_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/thread/group_spec.rb +5 -2
- data/spec/framework_spec/app/spec/core/thread/initialize_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/thread/inspect_spec.rb +8 -4
- data/spec/framework_spec/app/spec/core/thread/join_spec.rb +17 -6
- data/spec/framework_spec/app/spec/core/thread/key_spec.rb +16 -5
- data/spec/framework_spec/app/spec/core/thread/keys_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/thread/kill_spec.rb +11 -3
- data/spec/framework_spec/app/spec/core/thread/list_spec.rb +7 -2
- data/spec/framework_spec/app/spec/core/thread/main_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/thread/new_spec.rb +40 -3
- data/spec/framework_spec/app/spec/core/thread/pass_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/thread/priority_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/thread/raise_spec.rb +41 -27
- data/spec/framework_spec/app/spec/core/thread/run_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/thread/safe_level_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/thread/set_trace_func_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/thread/shared/exit.rb +38 -30
- data/spec/framework_spec/app/spec/core/thread/shared/start.rb +51 -0
- data/spec/framework_spec/app/spec/core/thread/shared/wakeup.rb +25 -13
- data/spec/framework_spec/app/spec/core/thread/start_spec.rb +9 -2
- data/spec/framework_spec/app/spec/core/thread/status_spec.rb +8 -4
- data/spec/framework_spec/app/spec/core/thread/stop_spec.rb +12 -8
- data/spec/framework_spec/app/spec/core/thread/terminate_spec.rb +7 -3
- data/spec/framework_spec/app/spec/core/thread/value_spec.rb +21 -8
- data/spec/framework_spec/app/spec/core/thread/wakeup_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/threadgroup/add_spec.rb +36 -37
- data/spec/framework_spec/app/spec/core/threadgroup/enclose_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/threadgroup/enclosed_spec.rb +5 -1
- data/spec/framework_spec/app/spec/core/threadgroup/list_spec.rb +24 -25
- data/spec/framework_spec/app/spec/core/time/_dump_spec.rb +13 -2
- data/spec/framework_spec/app/spec/core/time/_load_spec.rb +24 -2
- data/spec/framework_spec/app/spec/core/time/asctime_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/at_spec.rb +34 -14
- data/spec/framework_spec/app/spec/core/time/comparison_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/time/ctime_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/day_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/dst_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/dup_spec.rb +10 -2
- data/spec/framework_spec/app/spec/core/time/eql_spec.rb +9 -3
- data/spec/framework_spec/app/spec/core/time/fixtures/classes.rb +5 -0
- data/spec/framework_spec/app/spec/core/time/fixtures/methods.rb +1 -29
- data/spec/framework_spec/app/spec/core/time/friday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/getgm_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/getlocal_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/getutc_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/gm_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/time/gmt_offset_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/gmt_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/gmtime_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/gmtoff_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/hash_spec.rb +5 -5
- data/spec/framework_spec/app/spec/core/time/hour_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/initialize_copy_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/initialize_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/inspect_spec.rb +11 -2
- data/spec/framework_spec/app/spec/core/time/isdst_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/time/local_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/time/localtime_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/mday_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/min_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/minus_spec.rb +53 -33
- data/spec/framework_spec/app/spec/core/time/mktime_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/time/mon_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/monday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/month_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/now_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/nsec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/plus_spec.rb +64 -19
- data/spec/framework_spec/app/spec/core/time/round_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/saturday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/sec_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/shared/gmt_offset.rb +23 -0
- data/spec/framework_spec/app/spec/core/time/shared/inspect.rb +25 -0
- data/spec/framework_spec/app/spec/core/time/shared/isdst.rb +1 -1
- data/spec/framework_spec/app/spec/core/time/shared/local.rb +8 -0
- data/spec/framework_spec/app/spec/core/time/shared/now.rb +12 -4
- data/spec/framework_spec/app/spec/core/time/shared/time_params.rb +134 -35
- data/spec/framework_spec/app/spec/core/time/strftime_spec.rb +141 -2
- data/spec/framework_spec/app/spec/core/time/subsec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/succ_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/sunday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/thursday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/times_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/to_a_spec.rb +4 -3
- data/spec/framework_spec/app/spec/core/time/to_f_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/to_i_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/to_r_spec.rb +13 -0
- data/spec/framework_spec/app/spec/core/time/to_s_spec.rb +11 -2
- data/spec/framework_spec/app/spec/core/time/tuesday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/tv_nsec_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/tv_sec_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/tv_usec_spec.rb +6 -2
- data/spec/framework_spec/app/spec/core/time/usec_spec.rb +8 -2
- data/spec/framework_spec/app/spec/core/time/utc_offset_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/utc_spec.rb +7 -7
- data/spec/framework_spec/app/spec/core/time/wday_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/wednesday_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/time/yday_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/time/year_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/time/zone_spec.rb +4 -3
- data/spec/framework_spec/app/spec/core/true/and_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/true/inspect_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/true/or_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/true/to_s_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/true/xor_spec.rb +1 -1
- data/spec/framework_spec/app/spec/core/unboundmethod/arity_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/unboundmethod/bind_spec.rb +26 -6
- data/spec/framework_spec/app/spec/core/unboundmethod/clone_spec.rb +2 -2
- data/spec/framework_spec/app/spec/core/unboundmethod/eql_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/unboundmethod/equal_value_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/unboundmethod/fixtures/classes.rb +4 -1
- data/spec/framework_spec/app/spec/core/unboundmethod/hash_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/unboundmethod/inspect_spec.rb +3 -3
- data/spec/framework_spec/app/spec/core/unboundmethod/name_spec.rb +19 -5
- data/spec/framework_spec/app/spec/core/unboundmethod/owner_spec.rb +4 -4
- data/spec/framework_spec/app/spec/core/unboundmethod/parameters_spec.rb +7 -0
- data/spec/framework_spec/app/spec/core/unboundmethod/shared/to_s.rb +4 -4
- data/spec/framework_spec/app/spec/core/unboundmethod/source_location_spec.rb +31 -0
- data/spec/framework_spec/app/spec/core/unboundmethod/to_s_spec.rb +3 -3
- data/spec/framework_spec/app/spec/fixtures/class.rb +39 -16
- data/spec/framework_spec/app/spec/fixtures/class_variables.rb +7 -7
- data/spec/framework_spec/app/spec/fixtures/code/file_fixture.rb +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/line_fixture.rb +5 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_ext_fixture.rb +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.bundle +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.dll +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.dylib +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext.bundle +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext.dll +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext.dylib +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext.rb +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.ext.so +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.rb +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/load_fixture.so +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/methods_fixture.rb +364 -0
- data/spec/framework_spec/app/spec/fixtures/code/raise_fixture.rb +1 -0
- data/spec/framework_spec/app/spec/fixtures/code/recursive_load_fixture.rb +5 -0
- data/spec/framework_spec/app/spec/fixtures/code/recursive_require_fixture.rb +3 -0
- data/spec/framework_spec/app/spec/fixtures/code/wrap_fixture.rb +3 -0
- data/spec/framework_spec/app/spec/fixtures/code_loading.rb +30 -0
- data/spec/framework_spec/app/spec/fixtures/enumerator/classes.rb +15 -0
- data/spec/framework_spec/app/spec/fixtures/kernel/callcc.rb +17 -0
- data/spec/framework_spec/app/spec/fixtures/kernel/classes.rb +56 -0
- data/spec/framework_spec/app/spec/fixtures/math/common.rb +3 -0
- data/spec/framework_spec/app/spec/fixtures/reflection.rb +352 -0
- data/spec/framework_spec/app/spec/language/BEGIN_spec.rb +57 -0
- data/spec/framework_spec/app/spec/language/README +1 -1
- data/spec/framework_spec/app/spec/language/alias_spec.rb +33 -20
- data/spec/framework_spec/app/spec/language/and_spec.rb +8 -8
- data/spec/framework_spec/app/spec/language/array_spec.rb +5 -5
- data/spec/framework_spec/app/spec/language/block_spec.rb +408 -27
- data/spec/framework_spec/app/spec/language/break_spec.rb +210 -280
- data/spec/framework_spec/app/spec/language/case_spec.rb +37 -38
- data/spec/framework_spec/app/spec/language/class_spec.rb +52 -70
- data/spec/framework_spec/app/spec/language/class_variable_spec.rb +6 -6
- data/spec/framework_spec/app/spec/language/{constants_spec_dontrun.rb → constants_spec.rb} +14 -0
- data/spec/framework_spec/app/spec/language/def_spec.rb +83 -68
- data/spec/framework_spec/app/spec/language/defined_spec.rb +1181 -142
- data/spec/framework_spec/app/spec/language/encoding_spec.rb +19 -20
- data/spec/framework_spec/app/spec/language/ensure_spec.rb +32 -37
- data/spec/framework_spec/app/spec/language/execution_spec.rb +9 -11
- data/spec/framework_spec/app/spec/language/file_spec.rb +21 -39
- data/spec/framework_spec/app/spec/language/fixtures/block.rb +26 -15
- data/spec/framework_spec/app/spec/language/fixtures/break.rb +240 -0
- data/spec/framework_spec/app/spec/language/fixtures/break_lambda_toplevel.rb +9 -0
- data/spec/framework_spec/app/spec/language/fixtures/break_lambda_toplevel_block.rb +23 -0
- data/spec/framework_spec/app/spec/language/fixtures/break_lambda_toplevel_method.rb +17 -0
- data/spec/framework_spec/app/spec/language/fixtures/classes.rb +8 -8
- data/spec/framework_spec/app/spec/language/fixtures/defined.rb +270 -0
- data/spec/framework_spec/app/spec/language/fixtures/ensure.rb +6 -6
- data/spec/framework_spec/app/spec/language/fixtures/file.rb +1 -1
- data/spec/framework_spec/app/spec/language/fixtures/literal_lambda.rb +7 -0
- data/spec/framework_spec/app/spec/language/fixtures/next.rb +128 -0
- data/spec/framework_spec/app/spec/language/fixtures/private.rb +3 -3
- data/spec/framework_spec/app/spec/language/fixtures/return.rb +44 -0
- data/spec/framework_spec/app/spec/language/fixtures/rubyopt.rb +1 -0
- data/spec/framework_spec/app/spec/language/fixtures/send.rb +110 -0
- data/spec/framework_spec/app/spec/language/fixtures/send_1.9.rb +20 -0
- data/spec/framework_spec/app/spec/language/fixtures/super.rb +38 -7
- data/spec/framework_spec/app/spec/language/fixtures/variables.rb +1 -1
- data/spec/framework_spec/app/spec/language/fixtures/yield.rb +20 -2
- data/spec/framework_spec/app/spec/language/for_spec.rb +63 -39
- data/spec/framework_spec/app/spec/language/hash_spec.rb +26 -1
- data/spec/framework_spec/app/spec/language/if_spec.rb +32 -2
- data/spec/framework_spec/app/spec/language/line_spec.rb +42 -17
- data/spec/framework_spec/app/spec/language/literal_lambda_spec.rb +1 -0
- data/spec/framework_spec/app/spec/language/loop_spec.rb +7 -8
- data/spec/framework_spec/app/spec/language/magic_comment_spec.rb +60 -61
- data/spec/framework_spec/app/spec/language/metaclass_spec.rb +21 -24
- data/spec/framework_spec/app/spec/language/module_spec.rb +46 -1
- data/spec/framework_spec/app/spec/language/next_spec.rb +241 -7
- data/spec/framework_spec/app/spec/language/not_spec.rb +22 -2
- data/spec/framework_spec/app/spec/language/numbers_spec.rb +5 -6
- data/spec/framework_spec/app/spec/language/or_spec.rb +33 -7
- data/spec/framework_spec/app/spec/language/order_spec.rb +3 -3
- data/spec/framework_spec/app/spec/language/precedence_spec.rb +31 -33
- data/spec/framework_spec/app/spec/language/predefined/data_spec.rb +45 -0
- data/spec/framework_spec/app/spec/language/{fixtures/predefined.rb → predefined/fixtures/data1.rb} +2 -0
- data/spec/framework_spec/app/spec/language/predefined/fixtures/data2.rb +4 -0
- data/spec/framework_spec/app/spec/language/predefined/fixtures/data3.rb +7 -0
- data/spec/framework_spec/app/spec/language/predefined/fixtures/data4.rb +4 -0
- data/spec/framework_spec/app/spec/{core/io/data/fixtures/data2.rb → language/predefined/fixtures/data_flock.rb} +1 -1
- data/spec/framework_spec/app/spec/language/predefined/fixtures/data_only.rb +2 -0
- data/spec/framework_spec/app/spec/language/predefined/fixtures/print_data.rb +3 -0
- data/spec/framework_spec/app/spec/language/predefined_spec.rb +599 -283
- data/spec/framework_spec/app/spec/language/private_spec.rb +4 -4
- data/spec/framework_spec/app/spec/language/proc_spec.rb +238 -0
- data/spec/framework_spec/app/spec/language/redo_spec.rb +2 -2
- data/spec/framework_spec/app/spec/language/regexp/anchors_spec.rb +163 -0
- data/spec/framework_spec/app/spec/language/regexp/back-references_spec.rb +50 -0
- data/spec/framework_spec/app/spec/language/regexp/character_classes_spec.rb +96 -0
- data/spec/framework_spec/app/spec/language/regexp/encoding_spec.rb +129 -0
- data/spec/framework_spec/app/spec/language/regexp/escapes_spec.rb +80 -0
- data/spec/framework_spec/app/spec/language/regexp/grouping_spec.rb +23 -0
- data/spec/framework_spec/app/spec/language/regexp/interpolation_spec.rb +55 -0
- data/spec/framework_spec/app/spec/language/regexp/modifiers_spec.rb +132 -0
- data/spec/framework_spec/app/spec/language/regexp/repetition_spec.rb +47 -0
- data/spec/framework_spec/app/spec/language/regexp/versions/character_classes_1.9.rb +499 -0
- data/spec/framework_spec/app/spec/language/regexp_spec.rb +42 -677
- data/spec/framework_spec/app/spec/language/rescue_spec.rb +57 -8
- data/spec/framework_spec/app/spec/language/retry_spec.rb +4 -4
- data/spec/framework_spec/app/spec/language/return_spec.rb +11 -2
- data/spec/framework_spec/app/spec/language/send_spec.rb +227 -0
- data/spec/framework_spec/app/spec/language/shared/__FILE__.rb +37 -0
- data/spec/framework_spec/app/spec/language/shared/__LINE__.rb +17 -0
- data/spec/framework_spec/app/spec/language/singleton_class_spec.rb +299 -0
- data/spec/framework_spec/app/spec/language/splat_spec.rb +188 -0
- data/spec/framework_spec/app/spec/language/string_spec.rb +42 -7
- data/spec/framework_spec/app/spec/language/super_spec.rb +11 -5
- data/spec/framework_spec/app/spec/language/symbol_spec.rb +18 -11
- data/spec/framework_spec/app/spec/language/throw_spec.rb +3 -3
- data/spec/framework_spec/app/spec/language/undef_spec.rb +1 -1
- data/spec/framework_spec/app/spec/language/unless_spec.rb +8 -8
- data/spec/framework_spec/app/spec/language/until_spec.rb +27 -27
- data/spec/framework_spec/app/spec/language/variables_spec.rb +57 -61
- data/spec/framework_spec/app/spec/language/versions/array_1.9.rb +8 -0
- data/spec/framework_spec/app/spec/language/versions/block_1.9.rb +80 -17
- data/spec/framework_spec/app/spec/language/versions/case_1.9.rb +5 -5
- data/spec/framework_spec/app/spec/language/versions/hash_1.9.rb +19 -0
- data/spec/framework_spec/app/spec/language/versions/literal_lambda_1.9.rb +143 -0
- data/spec/framework_spec/app/spec/language/versions/not_1.9.rb +22 -0
- data/spec/framework_spec/app/spec/language/versions/regexp_1.9.rb +3 -3
- data/spec/framework_spec/app/spec/language/versions/send_1.9.rb +196 -0
- data/spec/framework_spec/app/spec/language/versions/symbol_1.9.rb +10 -2
- data/spec/framework_spec/app/spec/language/versions/variables_1.9.rb +8 -0
- data/spec/framework_spec/app/spec/language/while_spec.rb +24 -24
- data/spec/framework_spec/app/spec/language/yield_spec.rb +105 -84
- data/spec/framework_spec/app/spec/library/base64/b64encode_spec.rb +36 -0
- data/spec/framework_spec/app/spec/library/base64/decode64_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/base64/decode_b_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/base64/encode64_spec.rb +14 -0
- data/spec/framework_spec/app/spec/library/digest/hexencode_spec.rb +31 -0
- data/spec/framework_spec/app/spec/library/digest/md5/append_spec.rb +3 -3
- data/spec/framework_spec/app/spec/library/digest/md5/block_length_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/digest_bang_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/digest_length_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/digest_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/equal_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/file_spec.rb +48 -0
- data/spec/framework_spec/app/spec/library/digest/md5/hexdigest_bang_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/hexdigest_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/inspect_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/length_spec.rb +3 -3
- data/spec/framework_spec/app/spec/library/digest/md5/reset_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/shared/constants.rb +1 -1
- data/spec/framework_spec/app/spec/library/digest/md5/shared/sample.rb +1 -1
- data/spec/framework_spec/app/spec/library/digest/md5/size_spec.rb +3 -3
- data/spec/framework_spec/app/spec/library/digest/md5/to_s_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/md5/update_spec.rb +3 -3
- data/spec/framework_spec/app/spec/library/digest/sha1/digest_spec.rb +2 -2
- data/spec/framework_spec/app/spec/library/digest/sha1/file_spec.rb +43 -0
- data/spec/framework_spec/app/spec/library/digest/sha1/shared/constants.rb +1 -1
- data/spec/framework_spec/app/spec/library/set/add_spec.rb +27 -0
- data/spec/framework_spec/app/spec/library/set/append_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/classify_spec.rb +35 -0
- data/spec/framework_spec/app/spec/library/set/clear_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/collect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/constructor_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/delete_if_spec.rb +46 -0
- data/spec/framework_spec/app/spec/library/set/delete_spec.rb +37 -0
- data/spec/framework_spec/app/spec/library/set/difference_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/divide_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/each_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/empty_spec.rb +10 -0
- data/spec/framework_spec/app/spec/library/set/enumerable/to_set_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/set/eql_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/equal_value_spec.rb +38 -0
- data/spec/framework_spec/app/spec/library/set/exclusion_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/flatten_merge_spec.rb +23 -0
- data/spec/framework_spec/app/spec/library/set/flatten_spec.rb +40 -0
- data/spec/framework_spec/app/spec/library/set/hash_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/include_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/initialize_copy_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/initialize_spec.rb +24 -0
- data/spec/framework_spec/app/spec/library/set/inspect_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/intersection_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/set/keep_if_spec.rb +41 -0
- data/spec/framework_spec/app/spec/library/set/length_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/map_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/member_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/merge_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/set/minus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/plus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/pretty_print_cycle_spec.rb +10 -0
- data/spec/framework_spec/app/spec/library/set/pretty_print_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/proper_subset_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/proper_superset_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/reject_spec.rb +50 -0
- data/spec/framework_spec/app/spec/library/set/replace_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/select_spec.rb +45 -0
- data/spec/framework_spec/app/spec/library/set/shared/add.rb +14 -0
- data/spec/framework_spec/app/spec/library/set/shared/collect.rb +20 -0
- data/spec/framework_spec/app/spec/library/set/shared/difference.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/shared/include.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/shared/intersection.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/shared/length.rb +6 -0
- data/spec/framework_spec/app/spec/library/set/shared/union.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/add_spec.rb +36 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/append_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/classify_spec.rb +35 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/clear_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/collect_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/constructor_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/delete_if_spec.rb +48 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/delete_spec.rb +37 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/difference_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/divide_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/each_spec.rb +36 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/empty_spec.rb +10 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/eql_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/equal_value_spec.rb +13 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/exclusion_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/flatten_merge_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/flatten_spec.rb +48 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/hash_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/include_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/initialize_copy_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/initialize_spec.rb +32 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/inspect_spec.rb +10 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/intersection_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/keep_if_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/length_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/map_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/member_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/merge_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/minus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/plus_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/pretty_print_cycle_spec.rb +10 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/pretty_print_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/proper_subset_spec.rb +33 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/proper_superset_spec.rb +33 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/reject_spec.rb +52 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/replace_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/select_spec.rb +38 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/add.rb +14 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/collect.rb +20 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/difference.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/include.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/intersection.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/length.rb +6 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/shared/union.rb +15 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/subset_spec.rb +33 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/subtract_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/superset_spec.rb +33 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/to_a_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/set/sortedset/union_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/set/subset_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/subtract_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/set/superset_spec.rb +34 -0
- data/spec/framework_spec/app/spec/library/set/to_a_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/set/union_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringio/append_spec.rb +84 -0
- data/spec/framework_spec/app/spec/library/stringio/binmode_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/stringio/bytes_spec.rb +13 -0
- data/spec/framework_spec/app/spec/library/stringio/chars_spec.rb +13 -0
- data/spec/framework_spec/app/spec/library/stringio/close_read_spec.rb +31 -0
- data/spec/framework_spec/app/spec/library/stringio/close_spec.rb +23 -0
- data/spec/framework_spec/app/spec/library/stringio/close_write_spec.rb +31 -0
- data/spec/framework_spec/app/spec/library/stringio/closed_read_spec.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/closed_spec.rb +16 -0
- data/spec/framework_spec/app/spec/library/stringio/closed_write_spec.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/codepoints.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringio/each_byte_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringio/each_char_spec.rb +13 -0
- data/spec/framework_spec/app/spec/library/stringio/each_codepoint.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/each_line_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/stringio/each_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/stringio/eof_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringio/external_encoding.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/fcntl_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/stringio/fileno_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/stringio/fixtures/classes.rb +15 -0
- data/spec/framework_spec/app/spec/library/stringio/flush_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/stringio/fsync_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/stringio/getbyte_spec.rb +21 -0
- data/spec/framework_spec/app/spec/library/stringio/getc_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/stringio/gets_spec.rb +139 -0
- data/spec/framework_spec/app/spec/library/stringio/initialize_copy_spec.rb +96 -0
- data/spec/framework_spec/app/spec/library/stringio/initialize_spec.rb +194 -0
- data/spec/framework_spec/app/spec/library/stringio/internal_encoding.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/isatty_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringio/length_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringio/lineno_spec.rb +30 -0
- data/spec/framework_spec/app/spec/library/stringio/lines_spec.rb +17 -0
- data/spec/framework_spec/app/spec/library/stringio/open_spec.rb +216 -0
- data/spec/framework_spec/app/spec/library/stringio/path_spec.rb +16 -0
- data/spec/framework_spec/app/spec/library/stringio/pid_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/stringio/pos_spec.rb +28 -0
- data/spec/framework_spec/app/spec/library/stringio/print_spec.rb +114 -0
- data/spec/framework_spec/app/spec/library/stringio/printf_spec.rb +61 -0
- data/spec/framework_spec/app/spec/library/stringio/putc_spec.rb +88 -0
- data/spec/framework_spec/app/spec/library/stringio/puts_spec.rb +159 -0
- data/spec/framework_spec/app/spec/library/stringio/read_spec.rb +62 -0
- data/spec/framework_spec/app/spec/library/stringio/readbyte_spec.rb +22 -0
- data/spec/framework_spec/app/spec/library/stringio/readchar_spec.rb +20 -0
- data/spec/framework_spec/app/spec/library/stringio/readline_spec.rb +128 -0
- data/spec/framework_spec/app/spec/library/stringio/readlines_spec.rb +94 -0
- data/spec/framework_spec/app/spec/library/stringio/readpartial_spec.rb +83 -0
- data/spec/framework_spec/app/spec/library/stringio/reopen_spec.rb +304 -0
- data/spec/framework_spec/app/spec/library/stringio/rewind_spec.rb +24 -0
- data/spec/framework_spec/app/spec/library/stringio/seek_spec.rb +76 -0
- data/spec/framework_spec/app/spec/library/stringio/set_encoding.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/codepoints.rb +45 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/each.rb +115 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/each_byte.rb +60 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/each_char.rb +50 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/eof.rb +24 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/getc.rb +43 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/isatty.rb +5 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/length.rb +5 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/read.rb +125 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/readchar.rb +29 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/tell.rb +12 -0
- data/spec/framework_spec/app/spec/library/stringio/shared/write.rb +87 -0
- data/spec/framework_spec/app/spec/library/stringio/size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringio/string_spec.rb +50 -0
- data/spec/framework_spec/app/spec/library/stringio/stringio_spec.rb +9 -0
- data/spec/framework_spec/app/spec/library/stringio/sync_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/stringio/sysread_spec.rb +54 -0
- data/spec/framework_spec/app/spec/library/stringio/syswrite_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/stringio/tell_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringio/truncate_spec.rb +70 -0
- data/spec/framework_spec/app/spec/library/stringio/tty_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringio/ungetc_spec.rb +99 -0
- data/spec/framework_spec/app/spec/library/stringio/write_spec.rb +19 -0
- data/spec/framework_spec/app/spec/library/stringscanner/append_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringscanner/beginning_of_line_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/bol_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/check_spec.rb +16 -0
- data/spec/framework_spec/app/spec/library/stringscanner/check_until_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/stringscanner/clear_spec.rb +26 -0
- data/spec/framework_spec/app/spec/library/stringscanner/concat_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringscanner/dup_spec.rb +39 -0
- data/spec/framework_spec/app/spec/library/stringscanner/element_reference_spec.rb +49 -0
- data/spec/framework_spec/app/spec/library/stringscanner/empty_spec.rb +26 -0
- data/spec/framework_spec/app/spec/library/stringscanner/eos_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/exist_spec.rb +24 -0
- data/spec/framework_spec/app/spec/library/stringscanner/get_byte_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/getbyte_spec.rb +29 -0
- data/spec/framework_spec/app/spec/library/stringscanner/getch_spec.rb +44 -0
- data/spec/framework_spec/app/spec/library/stringscanner/initialize_spec.rb +28 -0
- data/spec/framework_spec/app/spec/library/stringscanner/inspect_spec.rb +20 -0
- data/spec/framework_spec/app/spec/library/stringscanner/match_spec.rb +28 -0
- data/spec/framework_spec/app/spec/library/stringscanner/matched_size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/matched_spec.rb +41 -0
- data/spec/framework_spec/app/spec/library/stringscanner/matchedsize_spec.rb +27 -0
- data/spec/framework_spec/app/spec/library/stringscanner/must_C_version_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/stringscanner/peek_spec.rb +8 -0
- data/spec/framework_spec/app/spec/library/stringscanner/peep_spec.rb +26 -0
- data/spec/framework_spec/app/spec/library/stringscanner/pointer_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringscanner/pos_spec.rb +11 -0
- data/spec/framework_spec/app/spec/library/stringscanner/post_match_spec.rb +28 -0
- data/spec/framework_spec/app/spec/library/stringscanner/pre_match_spec.rb +41 -0
- data/spec/framework_spec/app/spec/library/stringscanner/reset_spec.rb +15 -0
- data/spec/framework_spec/app/spec/library/stringscanner/rest_size_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/rest_spec.rb +48 -0
- data/spec/framework_spec/app/spec/library/stringscanner/restsize_spec.rb +26 -0
- data/spec/framework_spec/app/spec/library/stringscanner/scan_full_spec.rb +30 -0
- data/spec/framework_spec/app/spec/library/stringscanner/scan_spec.rb +43 -0
- data/spec/framework_spec/app/spec/library/stringscanner/scan_until_spec.rb +23 -0
- data/spec/framework_spec/app/spec/library/stringscanner/search_full_spec.rb +30 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/bol.rb +25 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/concat.rb +30 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/eos.rb +17 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/extract_range.rb +22 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/extract_range_matched.rb +22 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/get_byte.rb +28 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/matched_size.rb +21 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/peek.rb +44 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/pos.rb +52 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/rest_size.rb +18 -0
- data/spec/framework_spec/app/spec/library/stringscanner/shared/terminate.rb +8 -0
- data/spec/framework_spec/app/spec/library/stringscanner/skip_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/stringscanner/skip_until_spec.rb +18 -0
- data/spec/framework_spec/app/spec/library/stringscanner/string_spec.rb +40 -0
- data/spec/framework_spec/app/spec/library/stringscanner/terminate_spec.rb +7 -0
- data/spec/framework_spec/app/spec/library/stringscanner/unscan_spec.rb +29 -0
- data/spec/framework_spec/app/spec/shared/complex/Complex.rb +76 -0
- data/spec/framework_spec/app/spec/shared/complex/abs.rb +12 -0
- data/spec/framework_spec/app/spec/shared/complex/abs2.rb +12 -0
- data/spec/framework_spec/app/spec/shared/complex/arg.rb +9 -0
- data/spec/framework_spec/app/spec/shared/complex/coerce.rb +41 -0
- data/spec/framework_spec/app/spec/shared/complex/conjugate.rb +8 -0
- data/spec/framework_spec/app/spec/shared/complex/denominator.rb +13 -0
- data/spec/framework_spec/app/spec/shared/complex/divide.rb +57 -0
- data/spec/framework_spec/app/spec/shared/complex/equal_value.rb +64 -0
- data/spec/framework_spec/app/spec/shared/complex/exponent.rb +54 -0
- data/spec/framework_spec/app/spec/shared/complex/hash.rb +16 -0
- data/spec/framework_spec/app/spec/shared/complex/image.rb +10 -0
- data/spec/framework_spec/app/spec/shared/complex/inspect.rb +29 -0
- data/spec/framework_spec/app/spec/shared/complex/minus.rb +25 -0
- data/spec/framework_spec/app/spec/shared/complex/modulo.rb +25 -0
- data/spec/framework_spec/app/spec/shared/complex/multiply.rb +24 -0
- data/spec/framework_spec/app/spec/shared/complex/numerator.rb +19 -0
- data/spec/framework_spec/app/spec/shared/complex/numeric/arg.rb +43 -0
- data/spec/framework_spec/app/spec/shared/complex/numeric/conj.rb +26 -0
- data/spec/framework_spec/app/spec/shared/complex/numeric/imag.rb +26 -0
- data/spec/framework_spec/app/spec/shared/complex/numeric/polar.rb +52 -0
- data/spec/framework_spec/app/spec/shared/complex/numeric/real.rb +30 -0
- data/spec/framework_spec/app/spec/shared/complex/plus.rb +25 -0
- data/spec/framework_spec/app/spec/shared/complex/polar.rb +22 -0
- data/spec/framework_spec/app/spec/shared/complex/real.rb +8 -0
- data/spec/framework_spec/app/spec/shared/complex/rect.rb +45 -0
- data/spec/framework_spec/app/spec/shared/complex/to_s.rb +39 -0
- data/spec/framework_spec/app/spec/shared/continuation/call.rb +76 -0
- data/spec/framework_spec/app/spec/shared/continuation/new.rb +5 -0
- data/spec/framework_spec/app/spec/shared/enumerator/each.rb +45 -0
- data/spec/framework_spec/app/spec/shared/enumerator/enum_cons.rb +12 -0
- data/spec/framework_spec/app/spec/shared/enumerator/enum_for.rb +15 -0
- data/spec/framework_spec/app/spec/shared/enumerator/new.rb +42 -0
- data/spec/framework_spec/app/spec/shared/enumerator/next.rb +30 -0
- data/spec/framework_spec/app/spec/shared/enumerator/rewind.rb +32 -0
- data/spec/framework_spec/app/spec/shared/enumerator/with_index.rb +35 -0
- data/spec/framework_spec/app/spec/shared/enumerator/with_object.rb +19 -0
- data/spec/framework_spec/app/spec/shared/fiber/resume.rb +65 -0
- data/spec/framework_spec/app/spec/shared/file/blockdev.rb +7 -1
- data/spec/framework_spec/app/spec/shared/file/chardev.rb +7 -1
- data/spec/framework_spec/app/spec/shared/file/directory.rb +59 -21
- data/spec/framework_spec/app/spec/shared/file/executable.rb +10 -14
- data/spec/framework_spec/app/spec/shared/file/executable_real.rb +15 -9
- data/spec/framework_spec/app/spec/shared/file/exist.rb +9 -3
- data/spec/framework_spec/app/spec/shared/file/file.rb +12 -10
- data/spec/framework_spec/app/spec/shared/file/grpowned.rb +12 -6
- data/spec/framework_spec/app/spec/shared/file/identical.rb +21 -16
- data/spec/framework_spec/app/spec/shared/file/owned.rb +4 -0
- data/spec/framework_spec/app/spec/shared/file/pipe.rb +4 -0
- data/spec/framework_spec/app/spec/shared/file/readable.rb +16 -13
- data/spec/framework_spec/app/spec/shared/file/readable_real.rb +7 -1
- data/spec/framework_spec/app/spec/shared/file/size.rb +107 -15
- data/spec/framework_spec/app/spec/shared/file/socket.rb +4 -0
- data/spec/framework_spec/app/spec/shared/file/sticky.rb +30 -0
- data/spec/framework_spec/app/spec/shared/file/symlink.rb +20 -14
- data/spec/framework_spec/app/spec/shared/file/world_readable.rb +48 -0
- data/spec/framework_spec/app/spec/shared/file/world_writable.rb +48 -0
- data/spec/framework_spec/app/spec/shared/file/writable.rb +10 -7
- data/spec/framework_spec/app/spec/shared/file/writable_real.rb +7 -1
- data/spec/framework_spec/app/spec/shared/file/zero.rb +16 -17
- data/spec/framework_spec/app/spec/shared/io/putc.rb +57 -0
- data/spec/framework_spec/app/spec/shared/kernel/callcc.rb +68 -0
- data/spec/framework_spec/app/spec/shared/kernel/method_missing.rb +60 -0
- data/spec/framework_spec/app/spec/shared/kernel/singleton_method_added.rb +7 -0
- data/spec/framework_spec/app/spec/shared/kernel/singleton_method_removed.rb +7 -0
- data/spec/framework_spec/app/spec/shared/kernel/singleton_method_undefined.rb +7 -0
- data/spec/framework_spec/app/spec/shared/math/atanh.rb +142 -0
- data/spec/framework_spec/app/spec/shared/process/times.rb +8 -8
- data/spec/framework_spec/app/spec/shared/rational/Rational.rb +113 -0
- data/spec/framework_spec/app/spec/shared/rational/abs.rb +12 -0
- data/spec/framework_spec/app/spec/shared/rational/ceil.rb +41 -0
- data/spec/framework_spec/app/spec/shared/rational/coerce.rb +41 -0
- data/spec/framework_spec/app/spec/shared/rational/comparison.rb +86 -0
- data/spec/framework_spec/app/spec/shared/rational/denominator.rb +15 -0
- data/spec/framework_spec/app/spec/shared/rational/div.rb +81 -0
- data/spec/framework_spec/app/spec/shared/rational/divide.rb +72 -0
- data/spec/framework_spec/app/spec/shared/rational/divmod.rb +53 -0
- data/spec/framework_spec/app/spec/shared/rational/equal_value.rb +62 -0
- data/spec/framework_spec/app/spec/shared/rational/exponent.rb +144 -0
- data/spec/framework_spec/app/spec/shared/rational/fdiv.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/floor.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/hash.rb +10 -0
- data/spec/framework_spec/app/spec/shared/rational/initialize.rb +25 -0
- data/spec/framework_spec/app/spec/shared/rational/inspect.rb +24 -0
- data/spec/framework_spec/app/spec/shared/rational/marshal_dump.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/marshal_load.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/minus.rb +49 -0
- data/spec/framework_spec/app/spec/shared/rational/modulo.rb +52 -0
- data/spec/framework_spec/app/spec/shared/rational/multiply.rb +63 -0
- data/spec/framework_spec/app/spec/shared/rational/new.rb +21 -0
- data/spec/framework_spec/app/spec/shared/rational/numerator.rb +11 -0
- data/spec/framework_spec/app/spec/shared/rational/plus.rb +49 -0
- data/spec/framework_spec/app/spec/shared/rational/quo.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/reduce.rb +31 -0
- data/spec/framework_spec/app/spec/shared/rational/remainder.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/round.rb +5 -0
- data/spec/framework_spec/app/spec/shared/rational/to_f.rb +11 -0
- data/spec/framework_spec/app/spec/shared/rational/to_i.rb +15 -0
- data/spec/framework_spec/app/spec/shared/rational/to_r.rb +14 -0
- data/spec/framework_spec/app/spec/shared/rational/to_s.rb +24 -0
- data/spec/framework_spec/app/spec/shared/rational/truncate.rb +5 -0
- data/spec/framework_spec/app/spec/spec_helper.rb +1 -37
- data/spec/framework_spec/app/spec/version.rb +3 -0
- data/spec/framework_spec/app/spec_runner.rb +50 -80
- data/spec/framework_spec/build.yml +3 -4
- data/spec/framework_spec/rhoconfig.txt +4 -1
- data/spec/phone_spec/app/spec/contacts_spec.rb +8 -4
- data/spec/phone_spec/app/spec/date_spec.rb +17 -0
- data/spec/phone_spec/app/spec/rhom_object_spec.rb +11 -0
- data/spec/phone_spec/app/spec/syncengine_spec.rb +63 -1
- data/spec/phone_spec/app/spec/uri_spec.rb +2 -0
- data/spec/phone_spec/app/spec/xml_spec.rb +10 -3
- data/spec/phone_spec/app/spec_runner.rb +1 -1
- data/spec/phone_spec/build.yml +2 -2
- data/spec/phone_spec/rhoconfig.txt +1 -0
- metadata +1059 -91
- data/Manifest.txt +0 -6338
- data/doc/rhodes-api/alert-api.txt +0 -102
- data/lib/extensions/mspec/mspec/fileutils.rb +0 -1589
- data/lib/extensions/mspec/mspec/helpers/bignum.rb +0 -5
- data/lib/extensions/mspec/mspec/helpers/infinity.rb +0 -5
- data/lib/extensions/mspec/mspec/helpers/metaclass.rb +0 -7
- data/lib/extensions/mspec/mspec/helpers/nan.rb +0 -5
- data/platform/shared/ruby/blockinlining.c +0 -464
- data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0b2.min.css +0 -8
- data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0b2.min.js +0 -155
- data/res/generators/templates/application/public/jquery/jquery-1.6.2.min.js +0 -18
- data/spec/framework_spec/app/spec/core/basicobject/basic_object_class_spec.rb +0 -18
- data/spec/framework_spec/app/spec/core/basicobject/basic_object_spec.rb +0 -23
- data/spec/framework_spec/app/spec/core/basicobject/basic_object_subclass_spec.rb +0 -25
- data/spec/framework_spec/app/spec/core/basicobject/metaclass_spec.rb +0 -27
- data/spec/framework_spec/app/spec/core/basicobject/remove_method_missing.rb +0 -14
- data/spec/framework_spec/app/spec/core/basicobject/shared/behavior.rb +0 -16
- data/spec/framework_spec/app/spec/core/builtin_constants/builtin_constants.rb +0 -13
- data/spec/framework_spec/app/spec/core/continuation/continuation_spec.rb +0 -109
- data/spec/framework_spec/app/spec/core/dir/new_spec.rb +0 -2
- data/spec/framework_spec/app/spec/core/enumerable/each_spec.rb +0 -14
- data/spec/framework_spec/app/spec/core/fiber/alive_spec.rb +0 -54
- data/spec/framework_spec/app/spec/core/fiber/current_spec.rb +0 -63
- data/spec/framework_spec/app/spec/core/fiber/shared/resume.rb +0 -71
- data/spec/framework_spec/app/spec/core/fiber/transfer_spec.rb +0 -45
- data/spec/framework_spec/app/spec/core/io/data/data_spec.rb +0 -13
- data/spec/framework_spec/app/spec/core/io/data/fixtures/data1.rb +0 -3
- data/spec/framework_spec/app/spec/core/io/data/flock_spec.rb +0 -22
- data/spec/framework_spec/app/spec/core/io/fixtures/paragraphs.txt +0 -7
- data/spec/framework_spec/app/spec/core/io/fixtures/readlines.txt +0 -6
- data/spec/framework_spec/app/spec/core/kernel/__callee__spec.rb +0 -9
- data/spec/framework_spec/app/spec/core/kernel/__method__spec.rb +0 -9
- data/spec/framework_spec/app/spec/core/proc/fixtures/procs.rb +0 -5
- data/spec/framework_spec/app/spec/find_spec.rb +0 -56
- data/spec/framework_spec/app/spec/fixtures/load/load_spec +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec.rooby +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_1.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_10.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_2.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_3.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_4.rb +0 -12
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_5.rb +0 -2
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_6.rb +0 -2
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_7.rb +0 -2
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_8.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_9.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_wrap.rb +0 -7
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_wrap2.rb +0 -7
- data/spec/framework_spec/app/spec/fixtures/load/load_spec_wrap_2.rb +0 -7
- data/spec/framework_spec/app/spec/fixtures/matrix.rb +0 -5
- data/spec/framework_spec/app/spec/fixtures/require/masked_require_spec_2.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/masked_require_spec_3.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec.rooby +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec.rooby.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_1.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_10.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_2.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_3.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_4.rb +0 -12
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_6.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_7.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_8.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_9.rb +0 -1
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_raises.rb +0 -3
- data/spec/framework_spec/app/spec/fixtures/require/require_spec_recursive.rb +0 -2
- data/spec/framework_spec/app/spec/language/catch_spec.rb +0 -84
- data/spec/framework_spec/app/spec/language/eigenclass_spec.rb +0 -317
- data/spec/framework_spec/app/spec/language/else_spec.rb +0 -1
- data/spec/framework_spec/app/spec/language/method_spec.rb +0 -273
- data/spec/framework_spec/app/spec/language/versions/array_1.8.rb +0 -13
- data/spec/framework_spec/app/spec/language/versions/method_1.9.rb +0 -137
- data/spec/framework_spec/app/spec/language/versions/symbol_1.8.rb +0 -5
data/platform/shared/ruby/gc.c
CHANGED
@@ -61,10 +61,6 @@ static VALUE gc_profile_result(void);
|
|
61
61
|
|
62
62
|
int rb_io_fptr_finalize(struct rb_io_t*);
|
63
63
|
|
64
|
-
#ifdef _DEBUG
|
65
|
-
extern void rhoGCReport(VALUE valReport);
|
66
|
-
#endif
|
67
|
-
|
68
64
|
#define rb_setjmp(env) RUBY_SETJMP(env)
|
69
65
|
#define rb_jmp_buf rb_jmpbuf_t
|
70
66
|
|
@@ -99,8 +95,6 @@ void *alloca ();
|
|
99
95
|
|
100
96
|
int ruby_gc_debug_indent = 0;
|
101
97
|
|
102
|
-
#undef GC_DEBUG
|
103
|
-
|
104
98
|
/* for GC profile */
|
105
99
|
#define GC_PROFILE_MORE_DETAIL 0
|
106
100
|
typedef struct gc_profile_record {
|
@@ -108,13 +102,16 @@ typedef struct gc_profile_record {
|
|
108
102
|
double gc_mark_time;
|
109
103
|
double gc_sweep_time;
|
110
104
|
double gc_invoke_time;
|
105
|
+
|
111
106
|
size_t heap_use_slots;
|
112
107
|
size_t heap_live_objects;
|
113
108
|
size_t heap_free_objects;
|
114
109
|
size_t heap_total_objects;
|
115
110
|
size_t heap_use_size;
|
116
111
|
size_t heap_total_size;
|
112
|
+
|
117
113
|
int have_finalize;
|
114
|
+
|
118
115
|
size_t allocate_increase;
|
119
116
|
size_t allocate_limit;
|
120
117
|
} gc_profile_record;
|
@@ -133,7 +130,7 @@ getrusage_time(void)
|
|
133
130
|
ULARGE_INTEGER ui;
|
134
131
|
LONG_LONG q;
|
135
132
|
double t;
|
136
|
-
|
133
|
+
|
137
134
|
if (GetProcessTimes(GetCurrentProcess(),
|
138
135
|
&creation_time, &exit_time, &kernel_time, &user_time) == 0)
|
139
136
|
{
|
@@ -216,24 +213,23 @@ getrusage_time(void)
|
|
216
213
|
} while(0)
|
217
214
|
#define GC_PROF_SET_MALLOC_INFO do {\
|
218
215
|
if (objspace->profile.run) {\
|
219
|
-
|
220
|
-
|
221
|
-
|
216
|
+
gc_profile_record *record = &objspace->profile.record[objspace->profile.count];\
|
217
|
+
record->allocate_increase = malloc_increase;\
|
218
|
+
record->allocate_limit = malloc_limit; \
|
222
219
|
}\
|
223
220
|
} while(0)
|
224
221
|
#define GC_PROF_SET_HEAP_INFO do {\
|
225
222
|
if (objspace->profile.run) {\
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
223
|
+
gc_profile_record *record = &objspace->profile.record[objspace->profile.count];\
|
224
|
+
record->heap_use_slots = heaps_used;\
|
225
|
+
record->heap_live_objects = live;\
|
226
|
+
record->heap_free_objects = freed; \
|
227
|
+
record->heap_total_objects = heaps_used * HEAP_OBJ_LIMIT;\
|
228
|
+
record->have_finalize = final_list ? Qtrue : Qfalse;\
|
229
|
+
record->heap_use_size = live * sizeof(RVALUE); \
|
230
|
+
record->heap_total_size = heaps_used * (HEAP_OBJ_LIMIT * sizeof(RVALUE));\
|
234
231
|
}\
|
235
232
|
} while(0)
|
236
|
-
|
237
233
|
#else
|
238
234
|
#define INIT_GC_PROF_PARAMS double gc_time = 0;\
|
239
235
|
size_t count = objspace->profile.count
|
@@ -244,10 +240,10 @@ getrusage_time(void)
|
|
244
240
|
#define GC_PROF_SET_MALLOC_INFO
|
245
241
|
#define GC_PROF_SET_HEAP_INFO do {\
|
246
242
|
if (objspace->profile.run) {\
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
243
|
+
gc_profile_record *record = &objspace->profile.record[objspace->profile.count];\
|
244
|
+
record->heap_total_objects = heaps_used * HEAP_OBJ_LIMIT;\
|
245
|
+
record->heap_use_size = live * sizeof(RVALUE); \
|
246
|
+
record->heap_total_size = heaps_used * HEAP_SIZE;\
|
251
247
|
}\
|
252
248
|
} while(0)
|
253
249
|
#endif
|
@@ -272,6 +268,7 @@ typedef struct RVALUE {
|
|
272
268
|
struct RRegexp regexp;
|
273
269
|
struct RHash hash;
|
274
270
|
struct RData data;
|
271
|
+
struct RTypedData typeddata;
|
275
272
|
struct RStruct rstruct;
|
276
273
|
struct RBignum bignum;
|
277
274
|
struct RFile file;
|
@@ -281,7 +278,7 @@ typedef struct RVALUE {
|
|
281
278
|
struct RComplex complex;
|
282
279
|
} as;
|
283
280
|
#ifdef GC_DEBUG
|
284
|
-
char *file;
|
281
|
+
const char *file;
|
285
282
|
int line;
|
286
283
|
#endif
|
287
284
|
} RVALUE;
|
@@ -293,7 +290,8 @@ typedef struct RVALUE {
|
|
293
290
|
struct heaps_slot {
|
294
291
|
void *membase;
|
295
292
|
RVALUE *slot;
|
296
|
-
|
293
|
+
size_t limit;
|
294
|
+
int finalize_flag;
|
297
295
|
};
|
298
296
|
|
299
297
|
#define HEAP_MIN_SLOTS 10000
|
@@ -380,6 +378,8 @@ int *ruby_initial_gc_stress_ptr = &rb_objspace.gc_stress;
|
|
380
378
|
|
381
379
|
#define need_call_final (finalizer_table && finalizer_table->num_entries)
|
382
380
|
|
381
|
+
static void rb_objspace_call_finalizer(rb_objspace_t *objspace);
|
382
|
+
|
383
383
|
#if defined(ENABLE_VM_OBJSPACE) && ENABLE_VM_OBJSPACE
|
384
384
|
rb_objspace_t *
|
385
385
|
rb_objspace_alloc(void)
|
@@ -391,6 +391,33 @@ rb_objspace_alloc(void)
|
|
391
391
|
|
392
392
|
return objspace;
|
393
393
|
}
|
394
|
+
|
395
|
+
void
|
396
|
+
rb_objspace_free(rb_objspace_t *objspace)
|
397
|
+
{
|
398
|
+
rb_objspace_call_finalizer(objspace);
|
399
|
+
if (objspace->profile.record) {
|
400
|
+
free(objspace->profile.record);
|
401
|
+
objspace->profile.record = 0;
|
402
|
+
}
|
403
|
+
if (global_List) {
|
404
|
+
struct gc_list *list, *next;
|
405
|
+
for (list = global_List; list; list = next) {
|
406
|
+
next = list->next;
|
407
|
+
free(list);
|
408
|
+
}
|
409
|
+
}
|
410
|
+
if (heaps) {
|
411
|
+
size_t i;
|
412
|
+
for (i = 0; i < heaps_used; ++i) {
|
413
|
+
free(heaps[i].membase);
|
414
|
+
}
|
415
|
+
free(heaps);
|
416
|
+
heaps_used = 0;
|
417
|
+
heaps = 0;
|
418
|
+
}
|
419
|
+
free(objspace);
|
420
|
+
}
|
394
421
|
#endif
|
395
422
|
|
396
423
|
/* tiny heap size */
|
@@ -399,15 +426,17 @@ rb_objspace_alloc(void)
|
|
399
426
|
/* 128KB */
|
400
427
|
/*#define HEAP_SIZE 0x20000 */
|
401
428
|
/* 64KB */
|
402
|
-
|
429
|
+
//RHO
|
430
|
+
#define HEAP_SIZE 0x10000
|
403
431
|
/* 16KB */
|
404
432
|
//#define HEAP_SIZE 0x4000
|
433
|
+
//RHO
|
405
434
|
/* 8KB */
|
406
435
|
/*#define HEAP_SIZE 0x2000 */
|
407
436
|
/* 4KB */
|
408
437
|
/*#define HEAP_SIZE 0x1000 */
|
409
438
|
/* 2KB */
|
410
|
-
|
439
|
+
/*#define HEAP_SIZE 0x800 */
|
411
440
|
|
412
441
|
#define HEAP_OBJ_LIMIT (HEAP_SIZE / sizeof(struct RVALUE))
|
413
442
|
|
@@ -470,7 +499,7 @@ rb_memerror(void)
|
|
470
499
|
|
471
500
|
/*
|
472
501
|
* call-seq:
|
473
|
-
* GC.stress
|
502
|
+
* GC.stress -> true or false
|
474
503
|
*
|
475
504
|
* returns current status of GC stress mode.
|
476
505
|
*/
|
@@ -484,7 +513,7 @@ gc_stress_get(VALUE self)
|
|
484
513
|
|
485
514
|
/*
|
486
515
|
* call-seq:
|
487
|
-
* GC.stress = bool
|
516
|
+
* GC.stress = bool -> bool
|
488
517
|
*
|
489
518
|
* updates GC stress mode.
|
490
519
|
*
|
@@ -495,17 +524,17 @@ gc_stress_get(VALUE self)
|
|
495
524
|
*/
|
496
525
|
|
497
526
|
static VALUE
|
498
|
-
gc_stress_set(VALUE self, VALUE
|
527
|
+
gc_stress_set(VALUE self, VALUE flag)
|
499
528
|
{
|
500
529
|
rb_objspace_t *objspace = &rb_objspace;
|
501
530
|
rb_secure(2);
|
502
|
-
ruby_gc_stress = RTEST(
|
503
|
-
return
|
531
|
+
ruby_gc_stress = RTEST(flag);
|
532
|
+
return flag;
|
504
533
|
}
|
505
534
|
|
506
535
|
/*
|
507
536
|
* call-seq:
|
508
|
-
* GC::Profiler.enable?
|
537
|
+
* GC::Profiler.enable? -> true or false
|
509
538
|
*
|
510
539
|
* returns current status of GC profile mode.
|
511
540
|
*/
|
@@ -519,7 +548,7 @@ gc_profile_enable_get(VALUE self)
|
|
519
548
|
|
520
549
|
/*
|
521
550
|
* call-seq:
|
522
|
-
* GC::Profiler.enable
|
551
|
+
* GC::Profiler.enable -> nil
|
523
552
|
*
|
524
553
|
* updates GC profile mode.
|
525
554
|
* start profiler for GC.
|
@@ -531,13 +560,13 @@ gc_profile_enable(void)
|
|
531
560
|
{
|
532
561
|
rb_objspace_t *objspace = &rb_objspace;
|
533
562
|
|
534
|
-
objspace->profile.run =
|
563
|
+
objspace->profile.run = TRUE;
|
535
564
|
return Qnil;
|
536
565
|
}
|
537
566
|
|
538
567
|
/*
|
539
568
|
* call-seq:
|
540
|
-
* GC::Profiler.disable
|
569
|
+
* GC::Profiler.disable -> nil
|
541
570
|
*
|
542
571
|
* updates GC profile mode.
|
543
572
|
* stop profiler for GC.
|
@@ -549,13 +578,13 @@ gc_profile_disable(void)
|
|
549
578
|
{
|
550
579
|
rb_objspace_t *objspace = &rb_objspace;
|
551
580
|
|
552
|
-
objspace->profile.run =
|
581
|
+
objspace->profile.run = FALSE;
|
553
582
|
return Qnil;
|
554
583
|
}
|
555
584
|
|
556
585
|
/*
|
557
586
|
* call-seq:
|
558
|
-
* GC::Profiler.clear
|
587
|
+
* GC::Profiler.clear -> nil
|
559
588
|
*
|
560
589
|
* clear before profile data.
|
561
590
|
*
|
@@ -603,12 +632,13 @@ gc_with_gvl(void *ptr)
|
|
603
632
|
static int
|
604
633
|
garbage_collect_with_gvl(rb_objspace_t *objspace)
|
605
634
|
{
|
635
|
+
if (dont_gc) return TRUE;
|
606
636
|
if (ruby_thread_has_gvl_p()) {
|
607
637
|
return garbage_collect(objspace);
|
608
638
|
}
|
609
639
|
else {
|
610
640
|
if (ruby_native_thread_p()) {
|
611
|
-
return (int)rb_thread_call_with_gvl(gc_with_gvl, (void *)objspace);
|
641
|
+
return (int)(VALUE)rb_thread_call_with_gvl(gc_with_gvl, (void *)objspace);
|
612
642
|
}
|
613
643
|
else {
|
614
644
|
/* no ruby thread */
|
@@ -618,12 +648,14 @@ garbage_collect_with_gvl(rb_objspace_t *objspace)
|
|
618
648
|
}
|
619
649
|
}
|
620
650
|
|
651
|
+
static void vm_xfree(rb_objspace_t *objspace, void *ptr);
|
652
|
+
|
621
653
|
static void *
|
622
654
|
vm_xmalloc(rb_objspace_t *objspace, size_t size)
|
623
655
|
{
|
624
656
|
void *mem;
|
625
657
|
|
626
|
-
if (size < 0) {
|
658
|
+
if ((ssize_t)size < 0) {
|
627
659
|
negative_size_allocation_error("negative allocation size (or too big)");
|
628
660
|
}
|
629
661
|
if (size == 0) size = 1;
|
@@ -662,13 +694,16 @@ vm_xrealloc(rb_objspace_t *objspace, void *ptr, size_t size)
|
|
662
694
|
{
|
663
695
|
void *mem;
|
664
696
|
|
665
|
-
if (size < 0) {
|
697
|
+
if ((ssize_t)size < 0) {
|
666
698
|
negative_size_allocation_error("negative re-allocation size");
|
667
699
|
}
|
668
|
-
if (!ptr) return
|
669
|
-
if (size == 0)
|
700
|
+
if (!ptr) return vm_xmalloc(objspace, size);
|
701
|
+
if (size == 0) {
|
702
|
+
vm_xfree(objspace, ptr);
|
703
|
+
return 0;
|
704
|
+
}
|
670
705
|
if (ruby_gc_stress && !ruby_disable_gc_stress)
|
671
|
-
|
706
|
+
garbage_collect_with_gvl(objspace);
|
672
707
|
|
673
708
|
#if CALC_EXACT_MALLOC_SIZE
|
674
709
|
size += sizeof(size_t);
|
@@ -755,13 +790,13 @@ void
|
|
755
790
|
ruby_xfree(void *x)
|
756
791
|
{
|
757
792
|
if (x)
|
758
|
-
|
793
|
+
vm_xfree(&rb_objspace, x);
|
759
794
|
}
|
760
795
|
|
761
796
|
|
762
797
|
/*
|
763
798
|
* call-seq:
|
764
|
-
* GC.enable
|
799
|
+
* GC.enable -> true or false
|
765
800
|
*
|
766
801
|
* Enables garbage collection, returning <code>true</code> if garbage
|
767
802
|
* collection was previously disabled.
|
@@ -778,13 +813,13 @@ rb_gc_enable(void)
|
|
778
813
|
rb_objspace_t *objspace = &rb_objspace;
|
779
814
|
int old = dont_gc;
|
780
815
|
|
781
|
-
dont_gc =
|
782
|
-
return old;
|
816
|
+
dont_gc = FALSE;
|
817
|
+
return old ? Qtrue : Qfalse;
|
783
818
|
}
|
784
819
|
|
785
820
|
/*
|
786
821
|
* call-seq:
|
787
|
-
* GC.disable
|
822
|
+
* GC.disable -> true or false
|
788
823
|
*
|
789
824
|
* Disables garbage collection, returning <code>true</code> if garbage
|
790
825
|
* collection was already disabled.
|
@@ -800,8 +835,8 @@ rb_gc_disable(void)
|
|
800
835
|
rb_objspace_t *objspace = &rb_objspace;
|
801
836
|
int old = dont_gc;
|
802
837
|
|
803
|
-
dont_gc =
|
804
|
-
return old;
|
838
|
+
dont_gc = TRUE;
|
839
|
+
return old ? Qtrue : Qfalse;
|
805
840
|
}
|
806
841
|
|
807
842
|
VALUE rb_mGC;
|
@@ -877,8 +912,8 @@ assign_heap_slot(rb_objspace_t *objspace)
|
|
877
912
|
{
|
878
913
|
RVALUE *p, *pend, *membase;
|
879
914
|
size_t hi, lo, mid;
|
880
|
-
|
881
|
-
|
915
|
+
size_t objs;
|
916
|
+
|
882
917
|
objs = HEAP_OBJ_LIMIT;
|
883
918
|
p = (RVALUE*)malloc(HEAP_SIZE);
|
884
919
|
|
@@ -890,7 +925,7 @@ assign_heap_slot(rb_objspace_t *objspace)
|
|
890
925
|
membase = p;
|
891
926
|
if ((VALUE)p % sizeof(RVALUE) != 0) {
|
892
927
|
p = (RVALUE*)((VALUE)p + sizeof(RVALUE) - ((VALUE)p % sizeof(RVALUE)));
|
893
|
-
if ((HEAP_SIZE - HEAP_OBJ_LIMIT * sizeof(RVALUE)) < ((char*)p - (char*)membase)) {
|
928
|
+
if ((HEAP_SIZE - HEAP_OBJ_LIMIT * sizeof(RVALUE)) < (size_t)((char*)p - (char*)membase)) {
|
894
929
|
objs--;
|
895
930
|
}
|
896
931
|
}
|
@@ -917,6 +952,7 @@ assign_heap_slot(rb_objspace_t *objspace)
|
|
917
952
|
heaps[hi].membase = membase;
|
918
953
|
heaps[hi].slot = p;
|
919
954
|
heaps[hi].limit = objs;
|
955
|
+
heaps[hi].finalize_flag = FALSE;
|
920
956
|
pend = p + objs;
|
921
957
|
if (lomem == 0 || lomem > p) lomem = p;
|
922
958
|
if (himem < pend) himem = pend;
|
@@ -937,12 +973,16 @@ init_heap(rb_objspace_t *objspace)
|
|
937
973
|
|
938
974
|
add = HEAP_MIN_SLOTS / HEAP_OBJ_LIMIT;
|
939
975
|
|
976
|
+
if (!add) {
|
977
|
+
add = 1;
|
978
|
+
}
|
979
|
+
|
940
980
|
if ((heaps_used + add) > heaps_length) {
|
941
|
-
|
981
|
+
allocate_heaps(objspace, heaps_used + add);
|
942
982
|
}
|
943
983
|
|
944
984
|
for (i = 0; i < add; i++) {
|
945
|
-
|
985
|
+
assign_heap_slot(objspace);
|
946
986
|
}
|
947
987
|
heaps_inc = 0;
|
948
988
|
objspace->profile.invoke_time = getrusage_time();
|
@@ -952,7 +992,12 @@ init_heap(rb_objspace_t *objspace)
|
|
952
992
|
static void
|
953
993
|
set_heaps_increment(rb_objspace_t *objspace)
|
954
994
|
{
|
955
|
-
size_t next_heaps_length = heaps_used * 1.8;
|
995
|
+
size_t next_heaps_length = (size_t)(heaps_used * 1.8);
|
996
|
+
|
997
|
+
if (next_heaps_length == heaps_used) {
|
998
|
+
next_heaps_length++;
|
999
|
+
}
|
1000
|
+
|
956
1001
|
heaps_inc = next_heaps_length - heaps_used;
|
957
1002
|
|
958
1003
|
if (next_heaps_length > heaps_length) {
|
@@ -964,11 +1009,11 @@ static int
|
|
964
1009
|
heaps_increment(rb_objspace_t *objspace)
|
965
1010
|
{
|
966
1011
|
if (heaps_inc > 0) {
|
967
|
-
|
1012
|
+
assign_heap_slot(objspace);
|
968
1013
|
heaps_inc--;
|
969
|
-
return
|
1014
|
+
return TRUE;
|
970
1015
|
}
|
971
|
-
return
|
1016
|
+
return FALSE;
|
972
1017
|
}
|
973
1018
|
|
974
1019
|
#define RANY(o) ((RVALUE*)(o))
|
@@ -977,9 +1022,9 @@ static VALUE
|
|
977
1022
|
rb_newobj_from_heap(rb_objspace_t *objspace)
|
978
1023
|
{
|
979
1024
|
VALUE obj;
|
980
|
-
|
1025
|
+
|
981
1026
|
if ((ruby_gc_stress && !ruby_disable_gc_stress) || !freelist) {
|
982
|
-
|
1027
|
+
if (!heaps_increment(objspace) && !garbage_collect(objspace)) {
|
983
1028
|
during_gc = 0;
|
984
1029
|
rb_memerror();
|
985
1030
|
}
|
@@ -1025,7 +1070,7 @@ rb_during_gc(void)
|
|
1025
1070
|
rb_objspace_t *objspace = &rb_objspace;
|
1026
1071
|
return during_gc;
|
1027
1072
|
}
|
1028
|
-
|
1073
|
+
|
1029
1074
|
VALUE
|
1030
1075
|
rb_newobj(void)
|
1031
1076
|
{
|
@@ -1094,6 +1139,44 @@ rb_data_object_alloc(VALUE klass, void *datap, RUBY_DATA_FUNC dmark, RUBY_DATA_F
|
|
1094
1139
|
return (VALUE)data;
|
1095
1140
|
}
|
1096
1141
|
|
1142
|
+
VALUE
|
1143
|
+
rb_data_typed_object_alloc(VALUE klass, void *datap, const rb_data_type_t *type)
|
1144
|
+
{
|
1145
|
+
NEWOBJ(data, struct RTypedData);
|
1146
|
+
|
1147
|
+
if (klass) Check_Type(klass, T_CLASS);
|
1148
|
+
|
1149
|
+
OBJSETUP(data, klass, T_DATA);
|
1150
|
+
|
1151
|
+
data->data = datap;
|
1152
|
+
data->typed_flag = 1;
|
1153
|
+
data->type = type;
|
1154
|
+
|
1155
|
+
return (VALUE)data;
|
1156
|
+
}
|
1157
|
+
|
1158
|
+
size_t
|
1159
|
+
rb_objspace_data_type_memsize(VALUE obj)
|
1160
|
+
{
|
1161
|
+
if (RTYPEDDATA_P(obj) && RTYPEDDATA_TYPE(obj)->dsize) {
|
1162
|
+
return RTYPEDDATA_TYPE(obj)->dsize(RTYPEDDATA_DATA(obj));
|
1163
|
+
}
|
1164
|
+
else {
|
1165
|
+
return 0;
|
1166
|
+
}
|
1167
|
+
}
|
1168
|
+
|
1169
|
+
const char *
|
1170
|
+
rb_objspace_data_type_name(VALUE obj)
|
1171
|
+
{
|
1172
|
+
if (RTYPEDDATA_P(obj)) {
|
1173
|
+
return RTYPEDDATA_TYPE(obj)->wrap_struct_name;
|
1174
|
+
}
|
1175
|
+
else {
|
1176
|
+
return 0;
|
1177
|
+
}
|
1178
|
+
}
|
1179
|
+
|
1097
1180
|
#ifdef __ia64
|
1098
1181
|
#define SET_STACK_END (SET_MACHINE_STACK_END(&th->machine_stack_end), th->machine_register_stack_end = rb_ia64_bsp())
|
1099
1182
|
#else
|
@@ -1105,17 +1188,17 @@ rb_data_object_alloc(VALUE klass, void *datap, RUBY_DATA_FUNC dmark, RUBY_DATA_F
|
|
1105
1188
|
#define STACK_LEVEL_MAX (th->machine_stack_maxsize/sizeof(VALUE))
|
1106
1189
|
|
1107
1190
|
#if STACK_GROW_DIRECTION < 0
|
1108
|
-
# define STACK_LENGTH (STACK_START - STACK_END)
|
1191
|
+
# define STACK_LENGTH (size_t)(STACK_START - STACK_END)
|
1109
1192
|
#elif STACK_GROW_DIRECTION > 0
|
1110
|
-
# define STACK_LENGTH (STACK_END - STACK_START + 1)
|
1193
|
+
# define STACK_LENGTH (size_t)(STACK_END - STACK_START + 1)
|
1111
1194
|
#else
|
1112
|
-
# define STACK_LENGTH ((STACK_END < STACK_START) ? STACK_START - STACK_END\
|
1113
|
-
|
1195
|
+
# define STACK_LENGTH ((STACK_END < STACK_START) ? (size_t)(STACK_START - STACK_END) \
|
1196
|
+
: (size_t)(STACK_END - STACK_START + 1))
|
1114
1197
|
#endif
|
1115
1198
|
#if !STACK_GROW_DIRECTION
|
1116
1199
|
int ruby_stack_grow_direction;
|
1117
1200
|
int
|
1118
|
-
ruby_get_stack_grow_direction(VALUE *addr)
|
1201
|
+
ruby_get_stack_grow_direction(volatile VALUE *addr)
|
1119
1202
|
{
|
1120
1203
|
VALUE *end;
|
1121
1204
|
SET_MACHINE_STACK_END(&end);
|
@@ -1216,8 +1299,8 @@ is_pointer_to_heap(rb_objspace_t *objspace, void *ptr)
|
|
1216
1299
|
register struct heaps_slot *heap;
|
1217
1300
|
register size_t hi, lo, mid;
|
1218
1301
|
|
1219
|
-
if (p < lomem || p > himem) return
|
1220
|
-
if ((VALUE)p % sizeof(RVALUE) != 0) return
|
1302
|
+
if (p < lomem || p > himem) return FALSE;
|
1303
|
+
if ((VALUE)p % sizeof(RVALUE) != 0) return FALSE;
|
1221
1304
|
|
1222
1305
|
/* check if p looks like a pointer using bsearch*/
|
1223
1306
|
lo = 0;
|
@@ -1227,14 +1310,14 @@ is_pointer_to_heap(rb_objspace_t *objspace, void *ptr)
|
|
1227
1310
|
heap = &heaps[mid];
|
1228
1311
|
if (heap->slot <= p) {
|
1229
1312
|
if (p < heap->slot + heap->limit)
|
1230
|
-
return
|
1313
|
+
return TRUE;
|
1231
1314
|
lo = mid + 1;
|
1232
1315
|
}
|
1233
1316
|
else {
|
1234
1317
|
hi = mid;
|
1235
1318
|
}
|
1236
1319
|
}
|
1237
|
-
return
|
1320
|
+
return FALSE;
|
1238
1321
|
}
|
1239
1322
|
|
1240
1323
|
static void
|
@@ -1292,12 +1375,6 @@ mark_tbl(rb_objspace_t *objspace, st_table *tbl, int lev)
|
|
1292
1375
|
st_foreach(tbl, mark_entry, (st_data_t)&arg);
|
1293
1376
|
}
|
1294
1377
|
|
1295
|
-
void
|
1296
|
-
rb_mark_tbl(st_table *tbl)
|
1297
|
-
{
|
1298
|
-
mark_tbl(&rb_objspace, tbl, 0);
|
1299
|
-
}
|
1300
|
-
|
1301
1378
|
static int
|
1302
1379
|
mark_key(VALUE key, VALUE value, st_data_t data)
|
1303
1380
|
{
|
@@ -1347,6 +1424,73 @@ rb_mark_hash(st_table *tbl)
|
|
1347
1424
|
mark_hash(&rb_objspace, tbl, 0);
|
1348
1425
|
}
|
1349
1426
|
|
1427
|
+
static void
|
1428
|
+
mark_method_entry(rb_objspace_t *objspace, const rb_method_entry_t *me, int lev)
|
1429
|
+
{
|
1430
|
+
const rb_method_definition_t *def = me->def;
|
1431
|
+
|
1432
|
+
gc_mark(objspace, me->klass, lev);
|
1433
|
+
if (!def) return;
|
1434
|
+
switch (def->type) {
|
1435
|
+
case VM_METHOD_TYPE_ISEQ:
|
1436
|
+
gc_mark(objspace, def->body.iseq->self, lev);
|
1437
|
+
break;
|
1438
|
+
case VM_METHOD_TYPE_BMETHOD:
|
1439
|
+
gc_mark(objspace, def->body.proc, lev);
|
1440
|
+
break;
|
1441
|
+
case VM_METHOD_TYPE_ATTRSET:
|
1442
|
+
case VM_METHOD_TYPE_IVAR:
|
1443
|
+
gc_mark(objspace, def->body.attr.location, lev);
|
1444
|
+
break;
|
1445
|
+
default:
|
1446
|
+
break; /* ignore */
|
1447
|
+
}
|
1448
|
+
}
|
1449
|
+
|
1450
|
+
void
|
1451
|
+
rb_mark_method_entry(const rb_method_entry_t *me)
|
1452
|
+
{
|
1453
|
+
mark_method_entry(&rb_objspace, me, 0);
|
1454
|
+
}
|
1455
|
+
|
1456
|
+
static int
|
1457
|
+
mark_method_entry_i(ID key, const rb_method_entry_t *me, st_data_t data)
|
1458
|
+
{
|
1459
|
+
struct mark_tbl_arg *arg = (void*)data;
|
1460
|
+
mark_method_entry(arg->objspace, me, arg->lev);
|
1461
|
+
return ST_CONTINUE;
|
1462
|
+
}
|
1463
|
+
|
1464
|
+
static void
|
1465
|
+
mark_m_tbl(rb_objspace_t *objspace, st_table *tbl, int lev)
|
1466
|
+
{
|
1467
|
+
struct mark_tbl_arg arg;
|
1468
|
+
if (!tbl) return;
|
1469
|
+
arg.objspace = objspace;
|
1470
|
+
arg.lev = lev;
|
1471
|
+
st_foreach(tbl, mark_method_entry_i, (st_data_t)&arg);
|
1472
|
+
}
|
1473
|
+
|
1474
|
+
static int
|
1475
|
+
free_method_entry_i(ID key, rb_method_entry_t *me, st_data_t data)
|
1476
|
+
{
|
1477
|
+
rb_free_method_entry(me);
|
1478
|
+
return ST_CONTINUE;
|
1479
|
+
}
|
1480
|
+
|
1481
|
+
void
|
1482
|
+
rb_free_m_table(st_table *tbl)
|
1483
|
+
{
|
1484
|
+
st_foreach(tbl, free_method_entry_i, 0);
|
1485
|
+
st_free_table(tbl);
|
1486
|
+
}
|
1487
|
+
|
1488
|
+
void
|
1489
|
+
rb_mark_tbl(st_table *tbl)
|
1490
|
+
{
|
1491
|
+
mark_tbl(&rb_objspace, tbl, 0);
|
1492
|
+
}
|
1493
|
+
|
1350
1494
|
void
|
1351
1495
|
rb_gc_mark_maybe(VALUE obj)
|
1352
1496
|
{
|
@@ -1448,8 +1592,7 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1448
1592
|
ptr = (VALUE)obj->as.node.u3.node;
|
1449
1593
|
goto again;
|
1450
1594
|
|
1451
|
-
case
|
1452
|
-
case NODE_WHILE:
|
1595
|
+
case NODE_WHILE: /* 1,2 */
|
1453
1596
|
case NODE_UNTIL:
|
1454
1597
|
case NODE_AND:
|
1455
1598
|
case NODE_OR:
|
@@ -1469,8 +1612,7 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1469
1612
|
case NODE_ARGSCAT:
|
1470
1613
|
gc_mark(objspace, (VALUE)obj->as.node.u1.node, lev);
|
1471
1614
|
/* fall through */
|
1472
|
-
case
|
1473
|
-
case NODE_GASGN:
|
1615
|
+
case NODE_GASGN: /* 2 */
|
1474
1616
|
case NODE_LASGN:
|
1475
1617
|
case NODE_DASGN:
|
1476
1618
|
case NODE_DASGN_CURR:
|
@@ -1510,7 +1652,6 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1510
1652
|
|
1511
1653
|
case NODE_ZARRAY: /* - */
|
1512
1654
|
case NODE_ZSUPER:
|
1513
|
-
case NODE_CFUNC:
|
1514
1655
|
case NODE_VCALL:
|
1515
1656
|
case NODE_GVAR:
|
1516
1657
|
case NODE_LVAR:
|
@@ -1526,7 +1667,6 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1526
1667
|
case NODE_TRUE:
|
1527
1668
|
case NODE_FALSE:
|
1528
1669
|
case NODE_ERRINFO:
|
1529
|
-
case NODE_ATTRSET:
|
1530
1670
|
case NODE_BLOCK_ARG:
|
1531
1671
|
break;
|
1532
1672
|
case NODE_ALLOCA:
|
@@ -1555,7 +1695,7 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1555
1695
|
case T_ICLASS:
|
1556
1696
|
case T_CLASS:
|
1557
1697
|
case T_MODULE:
|
1558
|
-
|
1698
|
+
mark_m_tbl(objspace, RCLASS_M_TBL(obj), lev);
|
1559
1699
|
mark_tbl(objspace, RCLASS_IV_TBL(obj), lev);
|
1560
1700
|
ptr = RCLASS_SUPER(obj);
|
1561
1701
|
goto again;
|
@@ -1588,7 +1728,12 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1588
1728
|
break;
|
1589
1729
|
|
1590
1730
|
case T_DATA:
|
1591
|
-
if (
|
1731
|
+
if (RTYPEDDATA_P(obj)) {
|
1732
|
+
if (obj->as.typeddata.type->dmark) (*obj->as.typeddata.type->dmark)(DATA_PTR(obj));
|
1733
|
+
}
|
1734
|
+
else {
|
1735
|
+
if (obj->as.data.dmark) (*obj->as.data.dmark)(DATA_PTR(obj));
|
1736
|
+
}
|
1592
1737
|
break;
|
1593
1738
|
|
1594
1739
|
case T_OBJECT:
|
@@ -1651,7 +1796,7 @@ gc_mark_children(rb_objspace_t *objspace, VALUE ptr, int lev)
|
|
1651
1796
|
break;
|
1652
1797
|
|
1653
1798
|
default:
|
1654
|
-
rb_bug("rb_gc_mark(): unknown data type 0x%
|
1799
|
+
rb_bug("rb_gc_mark(): unknown data type 0x%x(%p) %s",
|
1655
1800
|
BUILTIN_TYPE(obj), (void *)obj,
|
1656
1801
|
is_pointer_to_heap(objspace, obj) ? "corrupted object" : "non object");
|
1657
1802
|
}
|
@@ -1678,7 +1823,7 @@ finalize_list(rb_objspace_t *objspace, RVALUE *p)
|
|
1678
1823
|
add_freelist(objspace, p);
|
1679
1824
|
}
|
1680
1825
|
else {
|
1681
|
-
struct heaps_slot *slot = (struct heaps_slot *)RDATA(p)->dmark;
|
1826
|
+
struct heaps_slot *slot = (struct heaps_slot *)(VALUE)RDATA(p)->dmark;
|
1682
1827
|
slot->limit--;
|
1683
1828
|
}
|
1684
1829
|
p = tmp;
|
@@ -1727,8 +1872,8 @@ gc_sweep(rb_objspace_t *objspace)
|
|
1727
1872
|
size_t i;
|
1728
1873
|
size_t live = 0, free_min = 0, do_heap_free = 0;
|
1729
1874
|
|
1730
|
-
do_heap_free = (heaps_used * HEAP_OBJ_LIMIT) * 0.65;
|
1731
|
-
free_min = (heaps_used * HEAP_OBJ_LIMIT) * 0.2;
|
1875
|
+
do_heap_free = (size_t)((heaps_used * HEAP_OBJ_LIMIT) * 0.65);
|
1876
|
+
free_min = (size_t)((heaps_used * HEAP_OBJ_LIMIT) * 0.2);
|
1732
1877
|
|
1733
1878
|
if (free_min < FREE_MIN) {
|
1734
1879
|
do_heap_free = heaps_used * HEAP_OBJ_LIMIT;
|
@@ -1739,11 +1884,13 @@ gc_sweep(rb_objspace_t *objspace)
|
|
1739
1884
|
final_list = deferred_final_list;
|
1740
1885
|
deferred_final_list = 0;
|
1741
1886
|
for (i = 0; i < heaps_used; i++) {
|
1742
|
-
|
1887
|
+
size_t free_num = 0, final_num = 0;
|
1743
1888
|
RVALUE *free = freelist;
|
1744
1889
|
RVALUE *final = final_list;
|
1745
1890
|
int deferred;
|
1746
1891
|
|
1892
|
+
if(heaps[i].finalize_flag) continue;
|
1893
|
+
|
1747
1894
|
p = heaps[i].slot; pend = p + heaps[i].limit;
|
1748
1895
|
while (p < pend) {
|
1749
1896
|
if (!(p->as.basic.flags & FL_MARK)) {
|
@@ -1778,11 +1925,11 @@ gc_sweep(rb_objspace_t *objspace)
|
|
1778
1925
|
RVALUE *pp;
|
1779
1926
|
|
1780
1927
|
for (pp = final_list; pp != final; pp = pp->as.free.next) {
|
1781
|
-
RDATA(pp)->dmark = (void *)&heaps[i];
|
1928
|
+
RDATA(pp)->dmark = (void (*)())(VALUE)&heaps[i];
|
1782
1929
|
pp->as.free.flags |= FL_SINGLETON; /* freeing page mark */
|
1783
1930
|
}
|
1784
1931
|
heaps[i].limit = final_num;
|
1785
|
-
|
1932
|
+
heaps[i].finalize_flag = TRUE;
|
1786
1933
|
freelist = free; /* cancel this page from freelist */
|
1787
1934
|
}
|
1788
1935
|
else {
|
@@ -1791,13 +1938,13 @@ gc_sweep(rb_objspace_t *objspace)
|
|
1791
1938
|
}
|
1792
1939
|
GC_PROF_SET_MALLOC_INFO;
|
1793
1940
|
if (malloc_increase > malloc_limit) {
|
1794
|
-
malloc_limit += (malloc_increase - malloc_limit) * (double)live / (live + freed);
|
1941
|
+
malloc_limit += (size_t)((malloc_increase - malloc_limit) * (double)live / (live + freed));
|
1795
1942
|
if (malloc_limit < GC_MALLOC_LIMIT) malloc_limit = GC_MALLOC_LIMIT;
|
1796
1943
|
}
|
1797
1944
|
malloc_increase = 0;
|
1798
1945
|
if (freed < free_min) {
|
1799
|
-
|
1800
|
-
|
1946
|
+
set_heaps_increment(objspace);
|
1947
|
+
heaps_increment(objspace);
|
1801
1948
|
}
|
1802
1949
|
during_gc = 0;
|
1803
1950
|
|
@@ -1862,7 +2009,7 @@ obj_free(rb_objspace_t *objspace, VALUE obj)
|
|
1862
2009
|
case T_MODULE:
|
1863
2010
|
case T_CLASS:
|
1864
2011
|
rb_clear_cache_by_class((VALUE)obj);
|
1865
|
-
|
2012
|
+
rb_free_m_table(RCLASS_M_TBL(obj));
|
1866
2013
|
if (RCLASS_IV_TBL(obj)) {
|
1867
2014
|
st_free_table(RCLASS_IV_TBL(obj));
|
1868
2015
|
}
|
@@ -1889,6 +2036,9 @@ obj_free(rb_objspace_t *objspace, VALUE obj)
|
|
1889
2036
|
break;
|
1890
2037
|
case T_DATA:
|
1891
2038
|
if (DATA_PTR(obj)) {
|
2039
|
+
if (RTYPEDDATA_P(obj)) {
|
2040
|
+
RDATA(obj)->dfree = RANY(obj)->as.typeddata.type->dfree;
|
2041
|
+
}
|
1892
2042
|
if ((long)RANY(obj)->as.data.dfree == -1) {
|
1893
2043
|
xfree(DATA_PTR(obj));
|
1894
2044
|
}
|
@@ -1918,6 +2068,7 @@ obj_free(rb_objspace_t *objspace, VALUE obj)
|
|
1918
2068
|
break;
|
1919
2069
|
case T_ICLASS:
|
1920
2070
|
/* iClass shares table with the module */
|
2071
|
+
xfree(RANY(obj)->as.klass.ptr);
|
1921
2072
|
break;
|
1922
2073
|
|
1923
2074
|
case T_FLOAT:
|
@@ -1949,7 +2100,7 @@ obj_free(rb_objspace_t *objspace, VALUE obj)
|
|
1949
2100
|
break;
|
1950
2101
|
|
1951
2102
|
default:
|
1952
|
-
rb_bug("gc_sweep(): unknown data type 0x%
|
2103
|
+
rb_bug("gc_sweep(): unknown data type 0x%x(%p)",
|
1953
2104
|
BUILTIN_TYPE(obj), (void*)obj);
|
1954
2105
|
}
|
1955
2106
|
|
@@ -1960,33 +2111,29 @@ obj_free(rb_objspace_t *objspace, VALUE obj)
|
|
1960
2111
|
|
1961
2112
|
void rb_vm_mark(void *ptr);
|
1962
2113
|
|
2114
|
+
#if STACK_GROW_DIRECTION < 0
|
2115
|
+
#define GET_STACK_BOUNDS(start, end, appendix) (start = STACK_END, end = STACK_START)
|
2116
|
+
#elif STACK_GROW_DIRECTION > 0
|
2117
|
+
#define GET_STACK_BOUNDS(start, end, appendix) (start = STACK_START, end = STACK_END+appendix)
|
2118
|
+
#else
|
2119
|
+
#define GET_STACK_BOUNDS(start, end, appendix) \
|
2120
|
+
((STACK_END < STACK_START) ? \
|
2121
|
+
(start = STACK_END, end = STACK_START) : (start = STACK_START, end = STACK_END+appendix))
|
2122
|
+
#endif
|
2123
|
+
|
1963
2124
|
static void
|
1964
2125
|
mark_current_machine_context(rb_objspace_t *objspace, rb_thread_t *th)
|
1965
2126
|
{
|
1966
2127
|
rb_jmp_buf save_regs_gc_mark;
|
1967
2128
|
VALUE *stack_start, *stack_end;
|
1968
2129
|
|
1969
|
-
SET_STACK_END;
|
1970
|
-
#if STACK_GROW_DIRECTION < 0
|
1971
|
-
stack_start = th->machine_stack_end;
|
1972
|
-
stack_end = th->machine_stack_start;
|
1973
|
-
#elif STACK_GROW_DIRECTION > 0
|
1974
|
-
stack_start = th->machine_stack_start;
|
1975
|
-
stack_end = th->machine_stack_end + 1;
|
1976
|
-
#else
|
1977
|
-
if (th->machine_stack_end < th->machine_stack_start) {
|
1978
|
-
stack_start = th->machine_stack_end;
|
1979
|
-
stack_end = th->machine_stack_start;
|
1980
|
-
}
|
1981
|
-
else {
|
1982
|
-
stack_start = th->machine_stack_start;
|
1983
|
-
stack_end = th->machine_stack_end + 1;
|
1984
|
-
}
|
1985
|
-
#endif
|
1986
|
-
|
1987
2130
|
FLUSH_REGISTER_WINDOWS;
|
1988
2131
|
/* This assumes that all registers are saved into the jmp_buf (and stack) */
|
1989
2132
|
rb_setjmp(save_regs_gc_mark);
|
2133
|
+
|
2134
|
+
SET_STACK_END;
|
2135
|
+
GET_STACK_BOUNDS(stack_start, stack_end, 1);
|
2136
|
+
|
1990
2137
|
mark_locations_array(objspace,
|
1991
2138
|
(VALUE*)save_regs_gc_mark,
|
1992
2139
|
sizeof(save_regs_gc_mark) / sizeof(VALUE));
|
@@ -2006,13 +2153,14 @@ void rb_gc_mark_encodings(void);
|
|
2006
2153
|
static int
|
2007
2154
|
garbage_collect(rb_objspace_t *objspace)
|
2008
2155
|
{
|
2009
|
-
/*int i = 0;*/
|
2010
2156
|
struct gc_list *list;
|
2011
2157
|
rb_thread_t *th = GET_THREAD();
|
2012
2158
|
INIT_GC_PROF_PARAMS;
|
2013
2159
|
|
2160
|
+
if (GC_NOTIFY) printf("start garbage_collect()\n");
|
2161
|
+
|
2014
2162
|
if (!heaps) {
|
2015
|
-
return
|
2163
|
+
return FALSE;
|
2016
2164
|
}
|
2017
2165
|
|
2018
2166
|
if (dont_gc || during_gc) {
|
@@ -2022,19 +2170,11 @@ garbage_collect(rb_objspace_t *objspace)
|
|
2022
2170
|
heaps_increment(objspace);
|
2023
2171
|
}
|
2024
2172
|
}
|
2025
|
-
return
|
2173
|
+
return TRUE;
|
2026
2174
|
}
|
2027
2175
|
during_gc++;
|
2028
2176
|
objspace->count++;
|
2029
2177
|
|
2030
|
-
if (GC_NOTIFY) printf("start garbage_collect()\n");
|
2031
|
-
|
2032
|
-
/*for ( i = 0; i < 100000; i++ )
|
2033
|
-
{
|
2034
|
-
char* mem = malloc(1000);
|
2035
|
-
free(mem);
|
2036
|
-
}*/
|
2037
|
-
|
2038
2178
|
GC_PROF_TIMER_START;
|
2039
2179
|
GC_PROF_MARK_TIMER_START;
|
2040
2180
|
SET_STACK_END;
|
@@ -2082,9 +2222,14 @@ garbage_collect(rb_objspace_t *objspace)
|
|
2082
2222
|
gc_sweep(objspace);
|
2083
2223
|
GC_PROF_SWEEP_TIMER_STOP;
|
2084
2224
|
|
2225
|
+
/* sweep unlinked method entries */
|
2226
|
+
if (th->vm->unlinked_method_entry_list) {
|
2227
|
+
rb_sweep_method_entry(th->vm);
|
2228
|
+
}
|
2229
|
+
|
2085
2230
|
GC_PROF_TIMER_STOP;
|
2086
2231
|
if (GC_NOTIFY) printf("end garbage_collect()\n");
|
2087
|
-
return
|
2232
|
+
return TRUE;
|
2088
2233
|
}
|
2089
2234
|
|
2090
2235
|
int
|
@@ -2097,18 +2242,10 @@ void
|
|
2097
2242
|
rb_gc_mark_machine_stack(rb_thread_t *th)
|
2098
2243
|
{
|
2099
2244
|
rb_objspace_t *objspace = &rb_objspace;
|
2100
|
-
|
2101
|
-
|
2102
|
-
|
2103
|
-
rb_gc_mark_locations(
|
2104
|
-
#else
|
2105
|
-
if (th->machine_stack_start < th->machine_stack_end) {
|
2106
|
-
rb_gc_mark_locations(th->machine_stack_start, th->machine_stack_end);
|
2107
|
-
}
|
2108
|
-
else {
|
2109
|
-
rb_gc_mark_locations(th->machine_stack_end, th->machine_stack_start);
|
2110
|
-
}
|
2111
|
-
#endif
|
2245
|
+
VALUE *stack_start, *stack_end;
|
2246
|
+
|
2247
|
+
GET_STACK_BOUNDS(stack_start, stack_end, 0);
|
2248
|
+
rb_gc_mark_locations(stack_start, stack_end);
|
2112
2249
|
#ifdef __ia64
|
2113
2250
|
rb_gc_mark_locations(th->machine_register_stack_start, th->machine_register_stack_end);
|
2114
2251
|
#endif
|
@@ -2117,9 +2254,9 @@ rb_gc_mark_machine_stack(rb_thread_t *th)
|
|
2117
2254
|
|
2118
2255
|
/*
|
2119
2256
|
* call-seq:
|
2120
|
-
* GC.start
|
2121
|
-
* gc.garbage_collect
|
2122
|
-
* ObjectSpace.garbage_collect
|
2257
|
+
* GC.start -> nil
|
2258
|
+
* gc.garbage_collect -> nil
|
2259
|
+
* ObjectSpace.garbage_collect -> nil
|
2123
2260
|
*
|
2124
2261
|
* Initiates garbage collection, unless manually disabled.
|
2125
2262
|
*
|
@@ -2135,7 +2272,7 @@ rb_gc_start(void)
|
|
2135
2272
|
#undef Init_stack
|
2136
2273
|
|
2137
2274
|
void
|
2138
|
-
Init_stack(VALUE *addr)
|
2275
|
+
Init_stack(volatile VALUE *addr)
|
2139
2276
|
{
|
2140
2277
|
ruby_init_stack(addr);
|
2141
2278
|
}
|
@@ -2177,54 +2314,134 @@ Init_heap(void)
|
|
2177
2314
|
init_heap(&rb_objspace);
|
2178
2315
|
}
|
2179
2316
|
|
2180
|
-
|
2181
|
-
|
2317
|
+
/*
|
2318
|
+
* rb_objspace_each_objects() is special C API to walk through
|
2319
|
+
* Ruby object space. This C API is too difficult to use it.
|
2320
|
+
* To be frank, you should not use it. Or you need to read the
|
2321
|
+
* source code of this function and understand what this function does.
|
2322
|
+
*
|
2323
|
+
* 'callback' will be called several times (the number of heap slot,
|
2324
|
+
* at current implementation) with:
|
2325
|
+
* vstart: a pointer to the first living object of the heap_slot.
|
2326
|
+
* vend: a pointer to next to the valid heap_slot area.
|
2327
|
+
* stride: a distance to next VALUE.
|
2328
|
+
*
|
2329
|
+
* If callback() returns non-zero, the iteration will be stopped.
|
2330
|
+
*
|
2331
|
+
* This is a sample callback code to iterate liveness objects:
|
2332
|
+
*
|
2333
|
+
* int
|
2334
|
+
* sample_callback(void *vstart, void *vend, int stride, void *data) {
|
2335
|
+
* VALUE v = (VALUE)vstart;
|
2336
|
+
* for (; v != (VALUE)vend; v += stride) {
|
2337
|
+
* if (RBASIC(v)->flags) { // liveness check
|
2338
|
+
* // do something with live object 'v'
|
2339
|
+
* }
|
2340
|
+
* return 0; // continue to iteration
|
2341
|
+
* }
|
2342
|
+
*
|
2343
|
+
* Note: 'vstart' is not a top of heap_slot. This point the first
|
2344
|
+
* living object to grasp at least one object to avoid GC issue.
|
2345
|
+
* This means that you can not walk through all Ruby object slot
|
2346
|
+
* including freed object slot.
|
2347
|
+
*
|
2348
|
+
* Note: On this implementation, 'stride' is same as sizeof(RVALUE).
|
2349
|
+
* However, there are possibilities to pass variable values with
|
2350
|
+
* 'stride' with some reasons. You must use stride instead of
|
2351
|
+
* use some constant value in the iteration.
|
2352
|
+
*/
|
2353
|
+
void
|
2354
|
+
rb_objspace_each_objects(int (*callback)(void *vstart, void *vend,
|
2355
|
+
size_t stride, void *d),
|
2356
|
+
void *data)
|
2182
2357
|
{
|
2183
2358
|
size_t i;
|
2184
|
-
size_t n = 0;
|
2185
2359
|
RVALUE *membase = 0;
|
2186
|
-
RVALUE *
|
2360
|
+
RVALUE *pstart, *pend;
|
2361
|
+
rb_objspace_t *objspace = &rb_objspace;
|
2187
2362
|
volatile VALUE v;
|
2188
2363
|
|
2189
2364
|
i = 0;
|
2190
2365
|
while (i < heaps_used) {
|
2191
|
-
|
2192
|
-
|
2193
|
-
|
2194
|
-
|
2195
|
-
|
2196
|
-
|
2197
|
-
|
2366
|
+
while (0 < i && (uintptr_t)membase < (uintptr_t)heaps[i-1].membase)
|
2367
|
+
i--;
|
2368
|
+
while (i < heaps_used && (uintptr_t)heaps[i].membase <= (uintptr_t)membase )
|
2369
|
+
i++;
|
2370
|
+
if (heaps_used <= i)
|
2371
|
+
break;
|
2372
|
+
membase = heaps[i].membase;
|
2198
2373
|
|
2199
|
-
|
2200
|
-
|
2201
|
-
|
2202
|
-
|
2203
|
-
|
2204
|
-
|
2205
|
-
|
2206
|
-
|
2207
|
-
|
2208
|
-
|
2209
|
-
|
2210
|
-
|
2211
|
-
|
2212
|
-
|
2213
|
-
|
2214
|
-
|
2215
|
-
|
2216
|
-
|
2374
|
+
pstart = heaps[i].slot;
|
2375
|
+
pend = pstart + heaps[i].limit;
|
2376
|
+
|
2377
|
+
for (; pstart != pend; pstart++) {
|
2378
|
+
if (pstart->as.basic.flags) {
|
2379
|
+
v = (VALUE)pstart; /* acquire to save this object */
|
2380
|
+
break;
|
2381
|
+
}
|
2382
|
+
}
|
2383
|
+
if (pstart != pend) {
|
2384
|
+
if ((*callback)(pstart, pend, sizeof(RVALUE), data)) {
|
2385
|
+
return;
|
2386
|
+
}
|
2387
|
+
}
|
2388
|
+
}
|
2389
|
+
|
2390
|
+
return;
|
2391
|
+
}
|
2392
|
+
|
2393
|
+
struct os_each_struct {
|
2394
|
+
size_t num;
|
2395
|
+
VALUE of;
|
2396
|
+
};
|
2397
|
+
|
2398
|
+
static int
|
2399
|
+
os_obj_of_i(void *vstart, void *vend, size_t stride, void *data)
|
2400
|
+
{
|
2401
|
+
struct os_each_struct *oes = (struct os_each_struct *)data;
|
2402
|
+
RVALUE *p = (RVALUE *)vstart, *pend = (RVALUE *)vend;
|
2403
|
+
volatile VALUE v;
|
2404
|
+
|
2405
|
+
for (; p != pend; p++) {
|
2406
|
+
if (p->as.basic.flags) {
|
2407
|
+
switch (BUILTIN_TYPE(p)) {
|
2408
|
+
case T_NONE:
|
2409
|
+
case T_ICLASS:
|
2410
|
+
case T_NODE:
|
2411
|
+
case T_ZOMBIE:
|
2412
|
+
continue;
|
2413
|
+
case T_CLASS:
|
2414
|
+
if (FL_TEST(p, FL_SINGLETON))
|
2415
|
+
continue;
|
2416
|
+
default:
|
2417
|
+
if (!p->as.basic.klass) continue;
|
2418
|
+
v = (VALUE)p;
|
2419
|
+
if (!oes->of || rb_obj_is_kind_of(v, oes->of)) {
|
2420
|
+
rb_yield(v);
|
2421
|
+
oes->num++;
|
2217
2422
|
}
|
2218
2423
|
}
|
2219
2424
|
}
|
2220
2425
|
}
|
2221
2426
|
|
2222
|
-
return
|
2427
|
+
return 0;
|
2428
|
+
}
|
2429
|
+
|
2430
|
+
static VALUE
|
2431
|
+
os_obj_of(VALUE of)
|
2432
|
+
{
|
2433
|
+
struct os_each_struct oes;
|
2434
|
+
|
2435
|
+
oes.num = 0;
|
2436
|
+
oes.of = of;
|
2437
|
+
rb_objspace_each_objects(os_obj_of_i, &oes);
|
2438
|
+
return SIZET2NUM(oes.num);
|
2223
2439
|
}
|
2224
2440
|
|
2225
2441
|
/*
|
2226
2442
|
* call-seq:
|
2227
|
-
* ObjectSpace.each_object([module]) {|obj| ... }
|
2443
|
+
* ObjectSpace.each_object([module]) {|obj| ... } -> fixnum
|
2444
|
+
* ObjectSpace.each_object([module]) -> an_enumerator
|
2228
2445
|
*
|
2229
2446
|
* Calls the block once for each living, nonimmediate object in this
|
2230
2447
|
* Ruby process. If <i>module</i> is specified, calls the block
|
@@ -2236,6 +2453,8 @@ os_obj_of(rb_objspace_t *objspace, VALUE of)
|
|
2236
2453
|
* returns both the numbers we defined and several constants defined in
|
2237
2454
|
* the <code>Math</code> module.
|
2238
2455
|
*
|
2456
|
+
* If no block is given, an enumerator is returned instead.
|
2457
|
+
*
|
2239
2458
|
* a = 102.7
|
2240
2459
|
* b = 95 # Won't be returned
|
2241
2460
|
* c = 12345678987654321
|
@@ -2268,7 +2487,7 @@ os_each_obj(int argc, VALUE *argv, VALUE os)
|
|
2268
2487
|
rb_scan_args(argc, argv, "01", &of);
|
2269
2488
|
}
|
2270
2489
|
RETURN_ENUMERATOR(os, 1, &of);
|
2271
|
-
return os_obj_of(
|
2490
|
+
return os_obj_of(of);
|
2272
2491
|
}
|
2273
2492
|
|
2274
2493
|
/*
|
@@ -2283,9 +2502,11 @@ static VALUE
|
|
2283
2502
|
undefine_final(VALUE os, VALUE obj)
|
2284
2503
|
{
|
2285
2504
|
rb_objspace_t *objspace = &rb_objspace;
|
2505
|
+
if (OBJ_FROZEN(obj)) rb_error_frozen("object");
|
2286
2506
|
if (finalizer_table) {
|
2287
2507
|
st_delete(finalizer_table, (st_data_t*)&obj, 0);
|
2288
2508
|
}
|
2509
|
+
FL_UNSET(obj, FL_FINALIZE);
|
2289
2510
|
return obj;
|
2290
2511
|
}
|
2291
2512
|
|
@@ -2305,6 +2526,7 @@ define_final(int argc, VALUE *argv, VALUE os)
|
|
2305
2526
|
VALUE obj, block, table;
|
2306
2527
|
|
2307
2528
|
rb_scan_args(argc, argv, "11", &obj, &block);
|
2529
|
+
if (OBJ_FROZEN(obj)) rb_error_frozen("object");
|
2308
2530
|
if (argc == 1) {
|
2309
2531
|
block = rb_block_proc();
|
2310
2532
|
}
|
@@ -2358,32 +2580,47 @@ run_single_final(VALUE arg)
|
|
2358
2580
|
}
|
2359
2581
|
|
2360
2582
|
static void
|
2361
|
-
|
2583
|
+
run_finalizer(rb_objspace_t *objspace, VALUE obj, VALUE objid, VALUE table)
|
2362
2584
|
{
|
2363
2585
|
long i;
|
2364
2586
|
int status;
|
2365
|
-
VALUE args[3]
|
2587
|
+
VALUE args[3];
|
2588
|
+
|
2589
|
+
args[1] = 0;
|
2590
|
+
args[2] = (VALUE)rb_safe_level();
|
2591
|
+
if (!args[1] && RARRAY_LEN(table) > 0) {
|
2592
|
+
args[1] = rb_obj_freeze(rb_ary_new3(1, objid));
|
2593
|
+
}
|
2594
|
+
for (i=0; i<RARRAY_LEN(table); i++) {
|
2595
|
+
VALUE final = RARRAY_PTR(table)[i];
|
2596
|
+
args[0] = RARRAY_PTR(final)[1];
|
2597
|
+
args[2] = FIX2INT(RARRAY_PTR(final)[0]);
|
2598
|
+
rb_protect(run_single_final, (VALUE)args, &status);
|
2599
|
+
}
|
2600
|
+
}
|
2601
|
+
|
2602
|
+
static void
|
2603
|
+
run_final(rb_objspace_t *objspace, VALUE obj)
|
2604
|
+
{
|
2605
|
+
VALUE table, objid;
|
2606
|
+
RUBY_DATA_FUNC free_func = 0;
|
2366
2607
|
|
2367
2608
|
objid = rb_obj_id(obj); /* make obj into id */
|
2368
2609
|
RBASIC(obj)->klass = 0;
|
2369
2610
|
|
2370
|
-
if (
|
2371
|
-
(
|
2611
|
+
if (RTYPEDDATA_P(obj)) {
|
2612
|
+
free_func = RTYPEDDATA_TYPE(obj)->dfree;
|
2613
|
+
}
|
2614
|
+
else {
|
2615
|
+
free_func = RDATA(obj)->dfree;
|
2616
|
+
}
|
2617
|
+
if (free_func) {
|
2618
|
+
(*free_func)(DATA_PTR(obj));
|
2372
2619
|
}
|
2373
2620
|
|
2374
2621
|
if (finalizer_table &&
|
2375
2622
|
st_delete(finalizer_table, (st_data_t*)&obj, &table)) {
|
2376
|
-
|
2377
|
-
args[2] = (VALUE)rb_safe_level();
|
2378
|
-
if (!args[1] && RARRAY_LEN(table) > 0) {
|
2379
|
-
args[1] = rb_obj_freeze(rb_ary_new3(1, objid));
|
2380
|
-
}
|
2381
|
-
for (i=0; i<RARRAY_LEN(table); i++) {
|
2382
|
-
VALUE final = RARRAY_PTR(table)[i];
|
2383
|
-
args[0] = RARRAY_PTR(final)[1];
|
2384
|
-
args[2] = FIX2INT(RARRAY_PTR(final)[0]);
|
2385
|
-
rb_protect(run_single_final, (VALUE)args, &status);
|
2386
|
-
}
|
2623
|
+
run_finalizer(objspace, obj, objid, table);
|
2387
2624
|
}
|
2388
2625
|
}
|
2389
2626
|
|
@@ -2415,39 +2652,69 @@ static int
|
|
2415
2652
|
chain_finalized_object(st_data_t key, st_data_t val, st_data_t arg)
|
2416
2653
|
{
|
2417
2654
|
RVALUE *p = (RVALUE *)key, **final_list = (RVALUE **)arg;
|
2418
|
-
if (p->as.basic.flags & FL_FINALIZE) {
|
2655
|
+
if ((p->as.basic.flags & (FL_FINALIZE|FL_MARK)) == FL_FINALIZE) {
|
2419
2656
|
if (BUILTIN_TYPE(p) != T_ZOMBIE) {
|
2420
2657
|
p->as.free.flags = FL_MARK | T_ZOMBIE; /* remain marked */
|
2421
2658
|
RDATA(p)->dfree = 0;
|
2422
2659
|
}
|
2423
2660
|
p->as.free.next = *final_list;
|
2424
2661
|
*final_list = p;
|
2425
|
-
return ST_CONTINUE;
|
2426
|
-
}
|
2427
|
-
else {
|
2428
|
-
return ST_DELETE;
|
2429
2662
|
}
|
2663
|
+
return ST_CONTINUE;
|
2664
|
+
}
|
2665
|
+
|
2666
|
+
struct force_finalize_list {
|
2667
|
+
VALUE obj;
|
2668
|
+
VALUE table;
|
2669
|
+
struct force_finalize_list *next;
|
2670
|
+
};
|
2671
|
+
|
2672
|
+
static int
|
2673
|
+
force_chain_object(st_data_t key, st_data_t val, st_data_t arg)
|
2674
|
+
{
|
2675
|
+
struct force_finalize_list **prev = (struct force_finalize_list **)arg;
|
2676
|
+
struct force_finalize_list *curr = ALLOC(struct force_finalize_list);
|
2677
|
+
curr->obj = key;
|
2678
|
+
curr->table = val;
|
2679
|
+
curr->next = *prev;
|
2680
|
+
*prev = curr;
|
2681
|
+
return ST_CONTINUE;
|
2430
2682
|
}
|
2431
2683
|
|
2432
2684
|
void
|
2433
2685
|
rb_gc_call_finalizer_at_exit(void)
|
2434
2686
|
{
|
2435
|
-
|
2687
|
+
rb_objspace_call_finalizer(&rb_objspace);
|
2688
|
+
}
|
2689
|
+
|
2690
|
+
void
|
2691
|
+
rb_objspace_call_finalizer(rb_objspace_t *objspace)
|
2692
|
+
{
|
2436
2693
|
RVALUE *p, *pend;
|
2437
2694
|
RVALUE *final_list = 0;
|
2438
2695
|
size_t i;
|
2439
2696
|
|
2440
2697
|
/* run finalizers */
|
2441
2698
|
if (finalizer_table) {
|
2442
|
-
|
2443
|
-
|
2699
|
+
do {
|
2700
|
+
/* XXX: this loop will make no sense */
|
2701
|
+
/* because mark will not be removed */
|
2702
|
+
finalize_deferred(objspace);
|
2703
|
+
mark_tbl(objspace, finalizer_table, 0);
|
2444
2704
|
st_foreach(finalizer_table, chain_finalized_object,
|
2445
|
-
(st_data_t)&
|
2446
|
-
|
2447
|
-
|
2448
|
-
|
2449
|
-
|
2450
|
-
|
2705
|
+
(st_data_t)&deferred_final_list);
|
2706
|
+
} while (deferred_final_list);
|
2707
|
+
/* force to run finalizer */
|
2708
|
+
while (finalizer_table->num_entries) {
|
2709
|
+
struct force_finalize_list *list = 0;
|
2710
|
+
st_foreach(finalizer_table, force_chain_object, (st_data_t)&list);
|
2711
|
+
while (list) {
|
2712
|
+
struct force_finalize_list *curr = list;
|
2713
|
+
run_finalizer(objspace, curr->obj, rb_obj_id(curr->obj), curr->table);
|
2714
|
+
st_delete(finalizer_table, (st_data_t*)&curr->obj, 0);
|
2715
|
+
list = curr->next;
|
2716
|
+
xfree(curr);
|
2717
|
+
}
|
2451
2718
|
}
|
2452
2719
|
st_free_table(finalizer_table);
|
2453
2720
|
finalizer_table = 0;
|
@@ -2462,6 +2729,9 @@ rb_gc_call_finalizer_at_exit(void)
|
|
2462
2729
|
DATA_PTR(p) && RANY(p)->as.data.dfree &&
|
2463
2730
|
RANY(p)->as.basic.klass != rb_cThread && RANY(p)->as.basic.klass != rb_cMutex) {
|
2464
2731
|
p->as.free.flags = 0;
|
2732
|
+
if (RTYPEDDATA_P(p)) {
|
2733
|
+
RDATA(p)->dfree = RANY(p)->as.typeddata.type->dfree;
|
2734
|
+
}
|
2465
2735
|
if ((long)RANY(p)->as.data.dfree == -1) {
|
2466
2736
|
xfree(DATA_PTR(p));
|
2467
2737
|
}
|
@@ -2494,11 +2764,12 @@ rb_gc(void)
|
|
2494
2764
|
garbage_collect(objspace);
|
2495
2765
|
gc_finalize_deferred(objspace);
|
2496
2766
|
|
2497
|
-
|
2767
|
+
//RHO
|
2498
2768
|
#ifdef _DEBUG
|
2499
2769
|
rhoGCReport(gc_profile_result());
|
2500
2770
|
#endif //_DEBUG
|
2501
|
-
|
2771
|
+
//RHO
|
2772
|
+
|
2502
2773
|
}
|
2503
2774
|
|
2504
2775
|
/*
|
@@ -2558,8 +2829,8 @@ id2ref(VALUE obj, VALUE objid)
|
|
2558
2829
|
* Document-method: object_id
|
2559
2830
|
*
|
2560
2831
|
* call-seq:
|
2561
|
-
* obj.__id__
|
2562
|
-
* obj.object_id
|
2832
|
+
* obj.__id__ -> fixnum
|
2833
|
+
* obj.object_id -> fixnum
|
2563
2834
|
*
|
2564
2835
|
* Returns an integer identifier for <i>obj</i>. The same number will
|
2565
2836
|
* be returned on all calls to <code>id</code> for a given object, and
|
@@ -2571,7 +2842,7 @@ id2ref(VALUE obj, VALUE objid)
|
|
2571
2842
|
|
2572
2843
|
/*
|
2573
2844
|
* call-seq:
|
2574
|
-
* obj.hash
|
2845
|
+
* obj.hash -> fixnum
|
2575
2846
|
*
|
2576
2847
|
* Generates a <code>Fixnum</code> hash value for this object. This
|
2577
2848
|
* function must have the property that <code>a.eql?(b)</code> implies
|
@@ -2735,9 +3006,9 @@ count_objects(int argc, VALUE *argv, VALUE os)
|
|
2735
3006
|
* call-seq:
|
2736
3007
|
* GC.count -> Integer
|
2737
3008
|
*
|
2738
|
-
* The number of times GC
|
3009
|
+
* The number of times GC occurred.
|
2739
3010
|
*
|
2740
|
-
* It returns the number of times GC
|
3011
|
+
* It returns the number of times GC occurred since the process started.
|
2741
3012
|
*
|
2742
3013
|
*/
|
2743
3014
|
|
@@ -2786,7 +3057,7 @@ gc_profile_record_get(void)
|
|
2786
3057
|
VALUE gc_profile = rb_ary_new();
|
2787
3058
|
size_t i;
|
2788
3059
|
rb_objspace_t *objspace = (&rb_objspace);
|
2789
|
-
|
3060
|
+
|
2790
3061
|
if (!objspace->profile.run) {
|
2791
3062
|
return Qnil;
|
2792
3063
|
}
|
@@ -2819,7 +3090,7 @@ gc_profile_record_get(void)
|
|
2819
3090
|
* GC::Profiler.result -> string
|
2820
3091
|
*
|
2821
3092
|
* Report profile data to string.
|
2822
|
-
*
|
3093
|
+
*
|
2823
3094
|
* It returns a string as:
|
2824
3095
|
* GC 1 invokes.
|
2825
3096
|
* Index Invoke Time(sec) Use Size(byte) Total Size(byte) Total Object GC time(ms)
|
@@ -2833,7 +3104,7 @@ gc_profile_result(void)
|
|
2833
3104
|
VALUE record;
|
2834
3105
|
VALUE result;
|
2835
3106
|
int i;
|
2836
|
-
|
3107
|
+
|
2837
3108
|
record = gc_profile_record_get();
|
2838
3109
|
if (objspace->profile.run && objspace->profile.count) {
|
2839
3110
|
result = rb_sprintf("GC %d invokes.\n", NUM2INT(gc_count(0)));
|
@@ -2875,7 +3146,7 @@ gc_profile_result(void)
|
|
2875
3146
|
* GC::Profiler.report
|
2876
3147
|
*
|
2877
3148
|
* GC::Profiler.result display
|
2878
|
-
*
|
3149
|
+
*
|
2879
3150
|
*/
|
2880
3151
|
|
2881
3152
|
static VALUE
|
@@ -2894,6 +3165,27 @@ gc_profile_report(int argc, VALUE *argv, VALUE self)
|
|
2894
3165
|
return Qnil;
|
2895
3166
|
}
|
2896
3167
|
|
3168
|
+
/*
|
3169
|
+
* call-seq:
|
3170
|
+
* GC::Profiler.total_time -> float
|
3171
|
+
*
|
3172
|
+
* return total time that GC used. (msec)
|
3173
|
+
*/
|
3174
|
+
|
3175
|
+
static VALUE
|
3176
|
+
gc_profile_total_time(VALUE self)
|
3177
|
+
{
|
3178
|
+
double time = 0;
|
3179
|
+
rb_objspace_t *objspace = &rb_objspace;
|
3180
|
+
size_t i;
|
3181
|
+
|
3182
|
+
if (objspace->profile.run && objspace->profile.count) {
|
3183
|
+
for (i = 0; i < objspace->profile.count; i++) {
|
3184
|
+
time += objspace->profile.record[i].gc_time;
|
3185
|
+
}
|
3186
|
+
}
|
3187
|
+
return DBL2NUM(time);
|
3188
|
+
}
|
2897
3189
|
|
2898
3190
|
/*
|
2899
3191
|
* The <code>GC</code> module provides an interface to Ruby's mark and
|
@@ -2923,6 +3215,7 @@ Init_GC(void)
|
|
2923
3215
|
rb_define_singleton_method(rb_mProfiler, "clear", gc_profile_clear, 0);
|
2924
3216
|
rb_define_singleton_method(rb_mProfiler, "result", gc_profile_result, 0);
|
2925
3217
|
rb_define_singleton_method(rb_mProfiler, "report", gc_profile_report, -1);
|
3218
|
+
rb_define_singleton_method(rb_mProfiler, "total_time", gc_profile_total_time, 0);
|
2926
3219
|
|
2927
3220
|
rb_mObSpace = rb_define_module("ObjectSpace");
|
2928
3221
|
rb_define_module_function(rb_mObSpace, "each_object", os_each_obj, -1);
|
@@ -2938,7 +3231,6 @@ Init_GC(void)
|
|
2938
3231
|
OBJ_TAINT(nomem_error);
|
2939
3232
|
OBJ_FREEZE(nomem_error);
|
2940
3233
|
|
2941
|
-
rb_define_method(rb_mKernel, "hash", rb_obj_id, 0);
|
2942
3234
|
rb_define_method(rb_mKernel, "__id__", rb_obj_id, 0);
|
2943
3235
|
rb_define_method(rb_mKernel, "object_id", rb_obj_id, 0);
|
2944
3236
|
|