rhodes 3.2.3 → 3.3.0.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (368) hide show
  1. data/CHANGELOG +10 -0
  2. data/Rakefile +153 -46
  3. data/doc/build.txt +261 -102
  4. data/doc/configuration.txt +5 -2
  5. data/doc/device-caps.txt +134 -23
  6. data/doc/extensions.txt +922 -69
  7. data/doc/generator.txt +96 -39
  8. data/doc/install.txt +35 -19
  9. data/doc/jqt-jqm-transition.txt +17 -1
  10. data/doc/rhom.txt +23 -2
  11. data/doc/rhostudio-eclipse.txt +49 -0
  12. data/doc/rhostudio-test-plan.txt +440 -0
  13. data/doc/simulator.txt +1 -1
  14. data/doc/synchronization.txt +40 -1
  15. data/lib/build/jake.rb +108 -7
  16. data/lib/extensions/barcode/ext/barcode/platform/android/Rakefile +0 -35
  17. data/lib/extensions/barcode/ext/barcode/platform/iphone/Barcode.xcodeproj/project.pbxproj +8 -2
  18. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.mm +195 -195
  19. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.m +6 -0
  20. data/lib/extensions/barcode/ext/barcode/platform/iphone/Rakefile +5 -0
  21. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +64 -20
  22. data/lib/extensions/debugger/CHANGELOG +3 -0
  23. data/lib/extensions/debugger/debugger.rb +26 -21
  24. data/lib/extensions/digest-md5/ext/Rakefile +5 -5
  25. data/lib/extensions/digest-md5/ext/build +10 -1
  26. data/lib/extensions/digest-md5/ext/defs.h +19 -0
  27. data/lib/extensions/digest-md5/ext/digest-md5.vcproj +317 -9
  28. data/lib/extensions/digest-md5/ext/iphone/Dmd5.xcodeproj/project.pbxproj +290 -0
  29. data/lib/extensions/digest-md5/ext/iphone/Dmd5_Prefix.pch +7 -0
  30. data/lib/extensions/digest-md5/ext/iphone/Rakefile +79 -0
  31. data/lib/extensions/digest-sha1/ext/Rakefile +5 -5
  32. data/lib/extensions/digest-sha1/ext/build +10 -1
  33. data/lib/extensions/digest-sha1/ext/defs.h +19 -0
  34. data/lib/extensions/digest-sha1/ext/digest-sha1.vcproj +317 -9
  35. data/lib/extensions/digest-sha1/ext/iphone/Dsha1.xcodeproj/project.pbxproj +278 -0
  36. data/lib/extensions/digest-sha1/ext/iphone/Dsha1_Prefix.pch +7 -0
  37. data/lib/extensions/digest-sha1/ext/iphone/Rakefile +79 -0
  38. data/lib/extensions/digest/ext/Rakefile +5 -5
  39. data/lib/extensions/digest/ext/build +10 -1
  40. data/lib/extensions/digest/ext/digest.vcproj +317 -9
  41. data/lib/extensions/digest/ext/iphone/Digest.xcodeproj/project.pbxproj +270 -0
  42. data/lib/extensions/digest/ext/iphone/Digest_Prefix.pch +7 -0
  43. data/lib/extensions/digest/ext/iphone/Rakefile +79 -0
  44. data/lib/extensions/esri/ext/esri/platform/iphone/ESRI.xcodeproj/project.pbxproj +10 -2
  45. data/lib/extensions/esri/ext/esri/platform/iphone/Rakefile +6 -0
  46. data/lib/extensions/fcntl/ext/Rakefile +5 -5
  47. data/lib/extensions/fcntl/ext/build +9 -1
  48. data/lib/extensions/fcntl/ext/iphone/Fcntl.xcodeproj/project.pbxproj +262 -0
  49. data/lib/extensions/fcntl/ext/iphone/Fcntl_Prefix.pch +7 -0
  50. data/lib/extensions/fcntl/ext/iphone/Rakefile +79 -0
  51. data/lib/extensions/net-http/net/http.rb +9 -7
  52. data/lib/extensions/nfc/ext/nfc/shared/ruby/nfc_wrap.c +64 -20
  53. data/lib/extensions/rhoxml/rexml/document.rb +3 -2
  54. data/lib/extensions/rhoxml/rexml/instruction.rb +70 -0
  55. data/lib/framework/builtinME.rb +9 -0
  56. data/lib/framework/date/format.rb +1 -1
  57. data/lib/framework/dateME.rb +19 -2
  58. data/lib/framework/rho/rho.rb +15 -4
  59. data/lib/framework/rho/rhoapplication.rb +1 -0
  60. data/lib/framework/rho/rhocontact.rb +10 -27
  61. data/lib/framework/rho/rhoevent_c.rb +8 -2
  62. data/lib/framework/rho/rhosupport.rb +25 -0
  63. data/lib/framework/rhodes.rb +1 -1
  64. data/lib/framework/rhoframework.rb +15 -0
  65. data/lib/framework/rholang/localization_simplified.rb +8 -10
  66. data/lib/framework/rhom/rhom_object_factory.rb +8 -2
  67. data/lib/framework/version.rb +1 -1
  68. data/lib/rhodes.rb +1 -1
  69. data/platform/android/Rhodes/jni/Application.mk +2 -1
  70. data/platform/android/Rhodes/jni/include/rhodes.h +9 -0
  71. data/platform/android/Rhodes/jni/src/callbacks.cpp +31 -1
  72. data/platform/android/Rhodes/jni/src/event.cpp +75 -31
  73. data/platform/android/Rhodes/jni/src/nativeview.cpp +1 -1
  74. data/platform/android/Rhodes/jni/src/phonebook.cpp +73 -9
  75. data/platform/android/Rhodes/jni/src/rhodes.cpp +21 -0
  76. data/platform/android/Rhodes/jni/src/rhodesapp.cpp +16 -24
  77. data/platform/android/Rhodes/jni/src/signature.cpp +27 -1
  78. data/platform/android/Rhodes/{default.properties → project.properties} +2 -2
  79. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java +14 -12
  80. data/platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java +14 -12
  81. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +38 -115
  82. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +69 -52
  83. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/Camera.java +9 -0
  84. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraNewService.java +21 -1
  85. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraOldService.java +1 -1
  86. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraSemiService.java +1 -1
  87. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraService.java +1 -1
  88. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +38 -6
  89. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/Event.java +212 -1
  90. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/EventStore.java +82 -125
  91. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +1 -1
  92. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/MainView.java +2 -1
  93. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +39 -19
  94. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SplashScreen.java +106 -136
  95. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +26 -25
  96. data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoNativeViewManager.java +1 -1
  97. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +40 -0
  98. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +47 -0
  99. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality02.java +33 -0
  100. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality03.java +33 -0
  101. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality04.java +34 -0
  102. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality05.java +75 -0
  103. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality06.java +34 -0
  104. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality07.java +34 -0
  105. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality08.java +44 -0
  106. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality09.java +34 -0
  107. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality10.java +34 -0
  108. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionalityManager.java +73 -0
  109. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Contact.java +57 -6
  110. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessor.java +2 -2
  111. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorNew.java +322 -76
  112. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorOld.java +11 -6
  113. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Phonebook.java +5 -5
  114. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientOld.java +2 -1
  115. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java +125 -0
  116. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsOld.java +2 -3
  117. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/WebView.java +16 -0
  118. data/platform/android/build/RhodesSRC_build.files +14 -0
  119. data/platform/android/build/android.rake +149 -147
  120. data/platform/android/build/android_tools.rb +58 -0
  121. data/platform/android/build/librhocommon_build.files +1 -0
  122. data/platform/android/build/libruby_build.files +3 -0
  123. data/platform/bb/RubyVM/src/com/rho/RhoConf.java +11 -1
  124. data/platform/bb/RubyVM/src/com/rho/db/DBAdapter.java +11 -5
  125. data/platform/bb/RubyVM/src/com/rho/db/DBAttrManager.java +3 -2
  126. data/platform/bb/RubyVM/src/com/rho/file/RhoFile.java +2 -0
  127. data/platform/bb/RubyVM/src/com/rho/net/RhoConnection.java +20 -8
  128. data/platform/bb/RubyVM/src/com/rho/sync/SyncEngine.java +9 -6
  129. data/platform/bb/RubyVM/src/com/rho/sync/SyncSource.java +45 -18
  130. data/platform/bb/RubyVM/src/com/rho/sync/SyncThread.java +1 -2
  131. data/platform/bb/build/bb.rake +84 -70
  132. data/platform/bb/rhodes/platform/5.0/com/rho/BrowserAdapter5.java +106 -14
  133. data/platform/bb/rhodes/src/com/rho/BrowserAdapter.java +1 -1
  134. data/platform/bb/rhodes/src/com/rho/BrowserAdapter5.java +108 -16
  135. data/platform/bb/rhodes/src/rhomobile/RhodesApplication.java +10 -5
  136. data/platform/bb/rhodes/src/rhomobile/camera/CameraScreen.java +21 -4
  137. data/platform/bb/rhodes/src/rhomobile/mapview/Annotation.java +17 -0
  138. data/platform/bb/rhodes/src/rhomobile/mapview/MapView.java +8 -5
  139. data/platform/bb/rhodes/src/rhomobile/mapview/MapViewScreen.java +3 -1
  140. data/platform/iphone/Classes/AppManager/AppManager.m +15 -3
  141. data/platform/iphone/Classes/Event/Event.m +45 -2
  142. data/platform/iphone/Classes/MapView/MapViewController.m +8 -4
  143. data/platform/iphone/Classes/Phonebook/phonebook.m +30 -7
  144. data/platform/iphone/Classes/Rhodes.h +11 -1
  145. data/platform/iphone/Classes/Rhodes.m +141 -9
  146. data/platform/iphone/Classes/Signature/SignatureDelegate.m +27 -1
  147. data/platform/iphone/Classes/SimpleMainView.h +1 -0
  148. data/platform/iphone/Classes/SimpleMainView.m +4 -0
  149. data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +31 -1
  150. data/platform/iphone/curl/curl.xcodeproj/project.pbxproj +10 -0
  151. data/platform/iphone/rbuild/iphone.rake +33 -6
  152. data/platform/iphone/rhoextlib/rhoextlib.xcodeproj/project.pbxproj +10 -2
  153. data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +22 -2
  154. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +14 -0
  155. data/platform/iphone/rhosynclib/rhosynclib.xcodeproj/project.pbxproj +10 -0
  156. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist +1 -1
  157. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
  158. data/platform/osx/build/osx.rake +58 -7
  159. data/platform/shared/RhoConnectClient/RhoConnectClient.cpp +427 -69
  160. data/platform/shared/RhoConnectClient/RhoConnectClient.h +21 -2
  161. data/platform/shared/common/Android.mk +2 -1
  162. data/platform/shared/common/AutoPointer.h +23 -0
  163. data/platform/shared/common/BundleManager.cpp +333 -0
  164. data/platform/shared/common/RhoFile.cpp +206 -23
  165. data/platform/shared/common/RhoFile.h +14 -4
  166. data/platform/shared/common/RhoFilePath.h +18 -0
  167. data/platform/shared/common/RhoStd.h +11 -1
  168. data/platform/shared/common/RhoThread.h +4 -1
  169. data/platform/shared/common/RhodesApp.cpp +31 -8
  170. data/platform/shared/common/RhodesApp.h +14 -0
  171. data/platform/shared/common/RhodesAppBase.cpp +6 -6
  172. data/platform/shared/common/RhodesAppBase.h +1 -1
  173. data/platform/shared/common/emml.h +34 -0
  174. data/platform/shared/common/iphone/RhoFileImpl.m +30 -2
  175. data/platform/shared/common/map/BaseMapEngine.cpp +3 -3
  176. data/platform/shared/common/map/GeocodingMapEngine.cpp +205 -14
  177. data/platform/shared/common/map/GeocodingMapEngine.h +25 -2
  178. data/platform/shared/common/map/MapEngine.cpp +24 -2
  179. data/platform/shared/common/map/MapEngine.h +23 -12
  180. data/platform/shared/common/phonebook/PhonebookParams.cpp +99 -0
  181. data/platform/shared/common/phonebook/PhonebookParams.h +52 -0
  182. data/platform/shared/common/rhoparams.cpp +14 -0
  183. data/platform/shared/common/rhoparams.h +1 -0
  184. data/platform/shared/db/DBAdapter.cpp +43 -24
  185. data/platform/shared/db/DBAdapter.h +6 -1
  186. data/platform/shared/db/DBAttrManager.cpp +50 -1
  187. data/platform/shared/logging/RhoLog.h +3 -0
  188. data/platform/shared/logging/RhoLogSink.cpp +5 -1
  189. data/platform/shared/net/CURLNetRequest.cpp +2 -0
  190. data/platform/shared/qt/rhodes/QtMainWindow.cpp +14 -1
  191. data/platform/shared/qt/rhodes/impl/PhonebookImpl.cpp +2 -2
  192. data/platform/shared/qt/rhodes/impl/RhoFileImpl.cpp +1 -1
  193. data/platform/shared/qt/rhodes/impl/SignatureImpl.cpp +14 -2
  194. data/platform/shared/qt/rhodes/impl/SystemImpl.cpp +16 -2
  195. data/platform/shared/qt/rhodes/main.cpp +28 -0
  196. data/platform/shared/qt/rhodes/rhodes.pro +3 -0
  197. data/platform/shared/qt/rholib/rholib.pro +2 -1
  198. data/platform/shared/qt/rubylib/rubylib.pro +2 -1
  199. data/platform/shared/ruby/Android.mk +3 -0
  200. data/platform/shared/ruby/class.c +7 -0
  201. data/platform/shared/ruby/compile.c +18 -10
  202. data/platform/shared/ruby/encdb.h +18 -8
  203. data/platform/shared/ruby/eval.c +108 -2
  204. data/platform/shared/ruby/ext/alert/alert_wrap.c +64 -20
  205. data/platform/shared/ruby/ext/asynchttp/asynchttp_wrap.c +64 -20
  206. data/platform/shared/ruby/ext/bluetooth/bluetooth_wrap.c +67 -23
  207. data/platform/shared/ruby/ext/calendar/calendar_wrap.c +64 -20
  208. data/platform/shared/ruby/ext/calendar/event_wrap.c +64 -20
  209. data/platform/shared/ruby/ext/camera/camera_wrap.c +64 -20
  210. data/platform/shared/ruby/ext/datetimepicker/datetimepicker_wrap.c +64 -20
  211. data/platform/shared/ruby/ext/geolocation/geolocation.i +16 -0
  212. data/platform/shared/ruby/ext/geolocation/geolocation_wrap.c +127 -26
  213. data/platform/shared/ruby/ext/mapview/mapview_wrap.c +64 -20
  214. data/platform/shared/ruby/ext/nativebar/nativebar_wrap.c +65 -21
  215. data/platform/shared/ruby/ext/nativeviewmanager/nativeviewmanager_wrap.c +64 -20
  216. data/platform/shared/ruby/ext/navbar/navbar_wrap.c +64 -20
  217. data/platform/shared/ruby/ext/phonebook/phonebook.i +7 -7
  218. data/platform/shared/ruby/ext/phonebook/phonebook_wrap.c +95 -120
  219. data/platform/shared/ruby/ext/rho/rhoruby.c +4 -4
  220. data/platform/shared/ruby/ext/rho/rhoruby.h +2 -0
  221. data/platform/shared/ruby/ext/rho/rhosupport.c +39 -6
  222. data/platform/shared/ruby/ext/rhoconf/rhoconf_wrap.c +65 -21
  223. data/platform/shared/ruby/ext/ringtones/ringtones_wrap.c +64 -20
  224. data/platform/shared/ruby/ext/signature/signature.i +37 -5
  225. data/platform/shared/ruby/ext/signature/signature_wrap.c +274 -45
  226. data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +65 -21
  227. data/platform/shared/ruby/ext/system/system.i +14 -2
  228. data/platform/shared/ruby/ext/system/system_wrap.c +146 -25
  229. data/platform/shared/ruby/ext/webview/webview_wrap.c +65 -21
  230. data/platform/shared/ruby/include/ruby/ruby.h +15 -4
  231. data/platform/shared/ruby/inits.c +1 -0
  232. data/platform/shared/ruby/io.c +13 -3
  233. data/platform/shared/ruby/win32/win32.c +3 -3
  234. data/platform/shared/ruby/wince/io_wce.c +2 -2
  235. data/platform/shared/rubyext/System.cpp +9 -5
  236. data/platform/shared/sync/ClientRegister.cpp +18 -8
  237. data/platform/shared/sync/SyncEngine.cpp +25 -11
  238. data/platform/shared/sync/SyncEngine.h +2 -0
  239. data/platform/shared/sync/SyncSource.cpp +40 -15
  240. data/platform/shared/sync/SyncSource.h +3 -2
  241. data/platform/shared/sync/SyncThread.cpp +9 -4
  242. data/platform/shared/sync/SyncThread.h +3 -1
  243. data/platform/symbian/build/symbian.rake +14 -9
  244. data/platform/symbian/rhodes/rhodes.pro +11 -8
  245. data/platform/symbian/rhodes/src/phonebook/ruby_phonebook.cpp +2 -2
  246. data/platform/symbian/rubylib/rubylib.pro +3 -0
  247. data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
  248. data/platform/wm/RhoLib/RhoLib.vcproj +315 -2
  249. data/platform/wm/build/build_inf.js +235 -187
  250. data/platform/wm/build/wm.rake +388 -233
  251. data/platform/wm/rhodes.sln +56 -0
  252. data/platform/wm/rhodes/MainWindow.cpp +139 -77
  253. data/platform/wm/rhodes/MainWindow.h +27 -22
  254. data/platform/wm/rhodes/MapView/{Graphics.cpp → Bitmap.cpp} +15 -253
  255. data/platform/wm/rhodes/MapView/Bitmap.h +86 -0
  256. data/platform/wm/rhodes/MapView/MapViewManager.cpp +7 -2
  257. data/platform/wm/rhodes/MapView/MapViewManager.h +1 -1
  258. data/platform/wm/rhodes/MapView/Win32Graphics.cpp +263 -0
  259. data/platform/wm/rhodes/MapView/Win32Graphics.h +133 -0
  260. data/platform/wm/rhodes/MapView/WmGraphics.cpp +291 -0
  261. data/platform/wm/rhodes/MapView/{Graphics.h → WmGraphics.h} +14 -56
  262. data/platform/wm/rhodes/Rhodes.cpp +128 -32
  263. data/platform/wm/rhodes/Rhodes.rc +6 -2
  264. data/platform/wm/rhodes/camera/Camera.cpp +1 -0
  265. data/platform/wm/rhodes/phonebook/phonebook.cpp +2 -2
  266. data/platform/wm/rhodes/phonebook/phonebook.h +2 -2
  267. data/platform/wm/rhodes/resource.h +3 -2
  268. data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +6 -0
  269. data/platform/wm/rhodes/rho/rubyext/NativeToolbar.cpp +4 -0
  270. data/platform/wm/rhodes/rho/rubyext/RhoSignature.cpp +675 -0
  271. data/platform/wm/rhodes/rho/rubyext/RhoSignature.h +123 -0
  272. data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +12 -2
  273. data/platform/wm/rhodes/rhodes.vcproj +2732 -1113
  274. data/platform/wm/rhodes/simulator/MainWindowQt.h +1 -1
  275. data/platform/wm/rhodes/stdafx.h +1 -0
  276. data/platform/wm/rhoelements.sln +118 -62
  277. data/platform/wm/rubylib/rubylib.vcproj +345 -16
  278. data/platform/wm/sqlite3/sqlite3.vcproj +305 -0
  279. data/platform/wm/syncengine/syncengine.vcproj +309 -0
  280. data/platform/wm/tools/detool/LogServer.cpp +19 -2
  281. data/platform/wm/tools/detool/detool.cpp +131 -6
  282. data/platform/wm/tools/detool/detool.vcproj +3 -1
  283. data/platform/wm/tools/detool/stdafx.h +1 -0
  284. data/platform/wp7/IronRuby/Languages/Ruby/Libraries/Builtins/RangeOps.cs +589 -0
  285. data/platform/wp7/IronRuby/Languages/Ruby/Ruby/Builtins/RubyEncoding.cs +678 -0
  286. data/platform/wp7/IronRuby/Languages/Ruby/Ruby/Runtime/RubyExceptionData.cs +271 -0
  287. data/platform/wp7/IronRuby/Languages/Ruby/Ruby/Runtime/RubyUtils.cs +31 -1
  288. data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.Libraries.dll +0 -0
  289. data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.dll +0 -0
  290. data/platform/wp7/RhoRubyLib/common/RhoStd.cs +6 -0
  291. data/platform/wp7/RhoRubyLib/common/RhodesApp.cs +16 -2
  292. data/platform/wp7/RhoRubyLib/net/NetRequest.cs +2 -0
  293. data/platform/wp7/RhoRubyLib/rubyext/RhoSyncEngine.cs +1 -2
  294. data/platform/wp7/RhoRubyLib/sync/SyncEngine.cs +13 -10
  295. data/platform/wp7/RhoRubyLib/sync/SyncSource.cs +30 -8
  296. data/platform/wp7/build/wp.rake +5 -0
  297. data/rakefile.rb +153 -46
  298. data/res/build-tools/detool.exe +0 -0
  299. data/res/build-tools/swig_patch/Lib/ruby/rubyerrors.swg +155 -0
  300. data/res/build-tools/swig_patch/Lib/ruby/rubyhead.swg +158 -0
  301. data/res/build-tools/swig_patch/Lib/ruby/rubyiterators.swg +932 -0
  302. data/res/build-tools/swig_patch/Lib/ruby/rubyrun.swg +448 -0
  303. data/res/build-tools/swig_patch/Lib/ruby/rubystdfunctors.swg +162 -0
  304. data/res/build-tools/swig_patch/Lib/ruby/rubytracking.swg +159 -0
  305. data/res/build-tools/swig_patch/Lib/ruby/std_basic_string.i +97 -0
  306. data/res/build-tools/swig_patch/Lib/ruby/std_map.i +418 -0
  307. data/res/build-tools/swig_patch/Lib/ruby/std_multimap.i +227 -0
  308. data/res/build-tools/swig_patch/Lib/swiginit.swg +269 -0
  309. data/res/build-tools/swig_patch/README +7 -0
  310. data/res/generators/templates/application/app/Settings/controller.rb +42 -1
  311. data/res/generators/templates/application/app/Settings/wait.erb +1 -1
  312. data/res/generators/templates/application/app/application.rb +1 -1
  313. data/res/generators/templates/application/app/layout.erb +8 -8
  314. data/res/generators/templates/application/build.yml +0 -1
  315. data/res/generators/templates/application/public/css/android.css +6 -0
  316. data/res/generators/templates/application/public/css/blackberry.css +6 -0
  317. data/res/generators/templates/application/public/css/iphone.css +6 -0
  318. data/res/generators/templates/application/public/css/jqmobile-patch.css +14 -0
  319. data/res/generators/templates/application/public/jqmobile/images/ajax-loader.png +0 -0
  320. data/res/generators/templates/application/public/jqmobile/images/icons-18-black.png +0 -0
  321. data/res/generators/templates/application/public/jqmobile/images/icons-18-white.png +0 -0
  322. data/res/generators/templates/application/public/jqmobile/images/icons-36-black.png +0 -0
  323. data/res/generators/templates/application/public/jqmobile/images/icons-36-white.png +0 -0
  324. data/res/generators/templates/application/public/jqmobile/{jquery.mobile-1.0rc1.css → jquery.mobile-1.0.css} +452 -354
  325. data/res/generators/templates/application/public/jqmobile/{jquery.mobile-1.0rc1.js → jquery.mobile-1.0.js} +629 -442
  326. data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0.min.css +2 -0
  327. data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0.min.js +172 -0
  328. data/res/generators/templates/application/public/jqmobile/jquery.mobile.structure-1.0.css +714 -0
  329. data/res/generators/templates/application/public/jqmobile/jquery.mobile.structure-1.0.min.css +2 -0
  330. data/res/generators/templates/application/public/js/jqmobile-patch.js +136 -7
  331. data/res/generators/templates/extension/app/MontanaTest/controller.rb +20 -20
  332. data/res/generators/templates/extension/app/MontanaTest/index.erb +17 -17
  333. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Montana.xcodeproj/project.pbxproj +8 -2
  334. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Rakefile +5 -0
  335. data/res/generators/templates/extension/extensions/montana/ext/montana/shared/ruby/montana_wrap.c +64 -20
  336. data/rhomobile-debug.gemspec +1 -1
  337. data/spec/framework_spec/app/layout.erb +1 -1
  338. data/spec/framework_spec/app/spec/core/rational/Rational_spec.rb +1 -1
  339. data/spec/framework_spec/app/spec/library/stringio/shared/each_char.rb +6 -2
  340. data/spec/framework_spec/app/spec/shared/rational/{Rational.rb → rational_main.rb} +0 -0
  341. data/spec/framework_spec/build.yml +0 -3
  342. data/spec/perfomance_spec/app/Benchmark/controller.rb +1 -1
  343. data/spec/perfomance_spec/app/layout.erb +1 -1
  344. data/spec/phone_spec/app/BlobTest_s/blob_test_s.rb +13 -0
  345. data/spec/phone_spec/app/BlobTest_s/test.png +0 -0
  346. data/spec/phone_spec/app/BlobTest_s/test2.png +0 -0
  347. data/spec/phone_spec/app/spec/blobsync_spec.rb +27 -15
  348. data/spec/phone_spec/app/spec/date_spec.rb +27 -1
  349. data/spec/phone_spec/app/spec/rho_spec.rb +6 -0
  350. data/spec/phone_spec/app/spec/rhom_object_spec.rb +64 -26
  351. data/spec/phone_spec/app/spec/syncengine_spec.rb +28 -7
  352. data/spec/phone_spec/app/spec/uri_spec.rb +4 -4
  353. data/spec/phone_spec/app/spec_runner.rb +4 -2
  354. data/spec/phone_spec/build.yml +7 -9
  355. data/spec/phone_spec/rhoconfig.txt +1 -0
  356. data/version +1 -1
  357. metadata +75 -22
  358. data/Manifest.txt +0 -7853
  359. data/platform/wm/rhodes/rhoelements/RhoWKBrowserEngine.cpp +0 -384
  360. data/platform/wm/rhodes/rhoelements/RhoWKBrowserEngine.h +0 -41
  361. data/platform/wm/rhodes/signature/Signature.cpp +0 -396
  362. data/platform/wm/rhodes/signature/Signature.h +0 -84
  363. data/platform/wm/rubylib/rubylib.vcproj.VLAD.Vladimir.user +0 -429
  364. data/platform/wm/sqlite3/sqlite3.vcproj.VLAD.Vladimir.user +0 -429
  365. data/platform/wm/syncengine/syncengine.vcproj.VLAD.Vladimir.user +0 -429
  366. data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0rc1.min.css +0 -12
  367. data/res/generators/templates/application/public/jqmobile/jquery.mobile-1.0rc1.min.js +0 -170
  368. data/rhomobile-debug-1.0.5.gem +0 -0
@@ -150,6 +150,10 @@ public:
150
150
  {
151
151
  sqlite3_bind_int64(st, nPos, val);
152
152
  }
153
+ void bind(sqlite3_stmt* st, int nPos, sqlite_int64 val)
154
+ {
155
+ sqlite3_bind_int64(st, nPos, val);
156
+ }
153
157
  void bind(sqlite3_stmt* st, int nPos, unsigned long val)
154
158
  {
155
159
  sqlite3_bind_int(st, nPos, static_cast<int>(val));
@@ -345,7 +349,8 @@ public:
345
349
  void destroy_tables(const rho::Vector<rho::String>& arIncludeTables, const rho::Vector<rho::String>& arExcludeTables);
346
350
  void setBulkSyncDB(String fDataName, String strCryptKey);
347
351
 
348
- void createDeleteTrigger(const String& strTable);
352
+ void createTrigger(const String& strSQL);
353
+ void dropTrigger(const String& strName);
349
354
 
350
355
  virtual DBResultPtr prepareStatement( const char* szSt );
351
356
  DBResultPtr executeStatement(common::CAutoPtr<CDBResult>& res, const char* szSt);
@@ -171,6 +171,18 @@ void CDBAttrManager::loadBlobAttrs(CDBAdapter& db)
171
171
  {
172
172
  loadAttrs(db, m_mapBlobAttrs, "blob_attribs");
173
173
 
174
+ String strTriggerPrefix = "rhoSchemaTrigger_";
175
+ IDBResult res = db.executeSQL( "SELECT name FROM sqlite_master WHERE type='trigger'" );
176
+ Hashtable<String,int> mapTriggers;
177
+ for ( ; !res.isEnd(); res.next() )
178
+ {
179
+ String strName = res.getStringByIdx(0);
180
+ if ( !String_startsWith(strName, strTriggerPrefix) )
181
+ continue;
182
+
183
+ mapTriggers[strName.substr(strTriggerPrefix.length())] = 0;
184
+ }
185
+
174
186
  for ( HashtablePtr< int, Hashtable<String,int>* >::iterator it = m_mapBlobAttrs.begin(); it != m_mapBlobAttrs.end(); ++it )
175
187
  {
176
188
  int nSrcID = it->first;
@@ -183,7 +195,44 @@ void CDBAttrManager::loadBlobAttrs(CDBAdapter& db)
183
195
  if ( !db.isTableExist(strName) )
184
196
  continue;
185
197
 
186
- db.createDeleteTrigger(strName);
198
+ Hashtable<String,int>& hashAttribs = *it->second;
199
+ for ( Hashtable<String,int>::iterator itAttr = hashAttribs.begin(); itAttr != hashAttribs.end(); ++itAttr )
200
+ {
201
+ String strTriggerName = strName + "_" + itAttr->first;
202
+ if ( !mapTriggers.containsKey(strTriggerName + "_delete") )
203
+ {
204
+ String strTrigger = String("CREATE TRIGGER ") + strTriggerPrefix + strTriggerName + "_delete BEFORE DELETE ON \"" + strName + "\" FOR EACH ROW \r\n"
205
+ " BEGIN \r\n"
206
+ " SELECT rhoOnDeleteSchemaRecord( OLD." + itAttr->first + ");\r\n"
207
+ " END;\r\n"
208
+ ";";
209
+
210
+ db.createTrigger(strTrigger);
211
+ }else
212
+ mapTriggers[strTriggerName + "_delete"] = 1;
213
+
214
+ if ( !mapTriggers.containsKey(strTriggerName + "_update") )
215
+ {
216
+ String strTrigger = String("CREATE TRIGGER ") + strTriggerPrefix + strTriggerName + "_update BEFORE UPDATE ON \"" + strName + "\" FOR EACH ROW\r\n"
217
+ " BEGIN \r\n"
218
+ " SELECT rhoOnUpdateSchemaRecord( OLD." + itAttr->first + ", NEW." + itAttr->first + ");\r\n"
219
+ " END;\r\n"
220
+ ";";
221
+
222
+ db.createTrigger(strTrigger);
223
+ }else
224
+ mapTriggers[strTriggerName + "_update"] = 1;
225
+
226
+ }
227
+ }
228
+
229
+ //Remove outdated triggers
230
+ for ( Hashtable<String,int>::iterator itTriggers = mapTriggers.begin(); itTriggers != mapTriggers.end(); ++itTriggers )
231
+ {
232
+ if ( !itTriggers->second )
233
+ {
234
+ db.dropTrigger(strTriggerPrefix+itTriggers->first);
235
+ }
187
236
  }
188
237
  }
189
238
 
@@ -358,6 +358,9 @@ int rhoPlainLogData(const char* file, int line, LogSeverity severity, const char
358
358
  #define RAWTRACE_IF(exp,msg) RAWLOG_NONE
359
359
  #define RAWTRACE_IF1(exp,msg,arg1) RAWLOG_NONE
360
360
 
361
+ #define RAWTRACEC_DATA(category,data,len)
362
+ #define RAWTRACE_DATA(data,len)
363
+
361
364
  #endif
362
365
 
363
366
  #define RHO_ASSERT(exp) (void) ((exp) || rhoPlainLog(__FILE__, __LINE__, L_FATAL, "", #exp ))
@@ -145,18 +145,22 @@ void CLogOutputSink::writeLogMessage( String& strMsg )
145
145
 
146
146
  const char* szMsg = strMsg.c_str();
147
147
 
148
- #if defined( OS_WINDOWS ) //|| defined( OS_WINCE )
148
+ #if defined( OS_WINDOWS )
149
149
  ::OutputDebugStringA(szMsg);
150
+ #elif defined( OS_PLATFORM_MOTCE )
151
+ ::OutputDebugStringW(common::convertToStringW(strMsg).c_str());
150
152
  #elif defined( OS_SYMBIAN )
151
153
  TPtrC8 des((const TUint8*)szMsg);
152
154
  RDebug::RawPrint(des);
153
155
  return;
154
156
  #endif
155
157
 
158
+ #if !defined( OS_PLATFORM_MOTCE )
156
159
  for( int n = 0; n < (int)strMsg.length(); n+= 100 )
157
160
  fwrite(szMsg+n, 1, min(100,strMsg.length()-n) , stdout );
158
161
 
159
162
  fflush(stdout);
163
+ #endif
160
164
  }
161
165
 
162
166
  CLogSocketSink::CLogSocketSink(const LogSettings& oSettings)
@@ -417,7 +417,9 @@ int CURLNetRequest::getResponseCode(CURLcode err, char const *body, size_t bodys
417
417
  RAWTRACE1("RESPONSE----- (%d bytes)", bodysize);
418
418
  if ( !rho_conf_getBool("log_skip_post") )
419
419
  {
420
+ #ifndef OS_SYMBIAN
420
421
  RAWTRACE_DATA(body, bodysize);
422
+ #endif
421
423
  }
422
424
  RAWTRACE("END RESPONSE-----");
423
425
  }
@@ -737,7 +737,16 @@ void QtMainWindow::alertShowPopup(CAlertParams * params)
737
737
  QString::fromWCharArray(rho::common::convertToStringW(params->m_message).c_str()));
738
738
  m_alertDialog->setStandardButtons(0);
739
739
  for (int i = 0; i < (int)params->m_buttons.size(); i++) {
740
- m_alertDialog->addButton(QString::fromWCharArray(rho::common::convertToStringW(params->m_buttons[i].m_strCaption).c_str()), QMessageBox::ActionRole);
740
+ #ifdef OS_SYMBIAN
741
+ if(i == 0)
742
+ #endif
743
+ m_alertDialog->addButton(QString::fromWCharArray(rho::common::convertToStringW(params->m_buttons[i].m_strCaption).c_str()), QMessageBox::ActionRole);
744
+ #ifdef OS_SYMBIAN
745
+ else if( i == 1)
746
+ m_alertDialog->addButton(QString::fromWCharArray(rho::common::convertToStringW(params->m_buttons[i].m_strCaption).c_str()), QMessageBox::RejectRole);
747
+ else if(i == 2)
748
+ break;
749
+ #endif
741
750
  }
742
751
  m_alertDialog->exec();
743
752
  if (m_alertDialog) {
@@ -745,7 +754,11 @@ void QtMainWindow::alertShowPopup(CAlertParams * params)
745
754
  if (btn) {
746
755
  for (int i = 0; i < m_alertDialog->buttons().count(); ++i) {
747
756
  if (btn == m_alertDialog->buttons().at(i)) {
757
+ #ifdef OS_SYMBIAN
758
+ RHODESAPP().callPopupCallback(params->m_callback, params->m_buttons[m_alertDialog->buttons().count() - i - 1].m_strID, params->m_buttons[m_alertDialog->buttons().count() - i - 1].m_strCaption);
759
+ #else
748
760
  RHODESAPP().callPopupCallback(params->m_callback, params->m_buttons[i].m_strID, params->m_buttons[i].m_strCaption);
761
+ #endif
749
762
  break;
750
763
  }
751
764
  }
@@ -46,13 +46,13 @@ VALUE getallPhonebookRecords(void* pb)
46
46
  return rho_ruby_get_NIL();
47
47
  }
48
48
 
49
- int getPhonebookRecordCount(void* pb)
49
+ int getPhonebookRecordCount(void* pb, rho_param* params)
50
50
  {
51
51
  //TODO: getPhonebookRecordCount
52
52
  return 0;
53
53
  }
54
54
 
55
- VALUE getPhonebookRecords(void* pb, int offset, int max_results, rho_param* select_param)
55
+ VALUE getPhonebookRecords(void* pb, rho_param* params)
56
56
  {
57
57
  //TODO: getPhonebookRecords
58
58
  return rho_ruby_get_NIL();
@@ -54,7 +54,7 @@ bool RemoveDirectory(QString &path, bool deleteDir)
54
54
 
55
55
  extern "C" {
56
56
 
57
- void delete_files_in_folder(const char *szFolderPath)
57
+ void rho_file_impl_delete_files_in_folder(const char *szFolderPath)
58
58
  {
59
59
  QString path = QString::fromUtf8(szFolderPath);
60
60
  RemoveDirectory(path, false);
@@ -31,13 +31,25 @@
31
31
 
32
32
  extern "C" {
33
33
 
34
- void rho_signature_take_signature(char* callback_url, char* image_format)
34
+ void rho_signature_take(char* callback_url, rho_param* p)
35
35
  {
36
36
  //TODO: rho_signature_take_signature
37
37
  //String callback = callback_url;
38
38
  //String format = image_format ? image_format : "png"; // default PNG
39
39
  //Signature::Params* params = new Signature::Params(callback, format);
40
- CMainWindow::getInstance()->takeSignature(0);
40
+ //CMainWindow::getInstance()->takeSignature(0);
41
+ }
42
+
43
+ void rho_signature_visible(bool b, rho_param* p)
44
+ {
45
+ }
46
+
47
+ void rho_signature_capture(const char* callback_url)
48
+ {
49
+ }
50
+
51
+ void rho_signature_clear()
52
+ {
41
53
  }
42
54
 
43
55
  } //extern "C"
@@ -34,6 +34,7 @@
34
34
  #include <QWebPage>
35
35
  #include <QLocale>
36
36
  #include <QDesktopServices>
37
+ #include <QMessageBox>
37
38
  #include "MainWindowImpl.h"
38
39
 
39
40
  using namespace rho;
@@ -248,8 +249,21 @@ int rho_sys_set_sleeping(int sleeping)
248
249
  }
249
250
  #endif
250
251
 
251
- void rho_sys_set_application_icon_badge(int badge_number) {
252
- //unsupported on WM
252
+ void rho_sys_set_application_icon_badge(int badge_number)
253
+ {
254
+ //TODO: rho_sys_set_application_icon_badge
255
+ RAWLOGC_INFO1("SystemImpl", "rho_sys_set_application_icon_badge(%d) was called", badge_number);
256
+ }
257
+
258
+ void rho_sys_impl_exit_with_errormessage(const char* szTitle, const char* szMsg)
259
+ {
260
+ QMessageBox::critical(0, QString(szTitle), QString(szMsg));
261
+ }
262
+
263
+ RHO_GLOBAL void rho_platform_restart_application()
264
+ {
265
+ //TODO: rho_platform_restart_application
266
+ RAWLOGC_INFO("SystemImpl", "rho_platform_restart_application() has no implementation in RhoSimulator.");
253
267
  }
254
268
 
255
269
  } //extern "C"
@@ -152,6 +152,7 @@ int main(int argc, char *argv[])
152
152
  RHOSIMCONF().setString( "ext_path", RHOSIMCONF().getString( "ext_path") + CFilePath::join( m_strRhodesPath, "/lib/extensions/debugger;"), false);
153
153
  RHOSIMCONF().setString( "ext_path", RHOSIMCONF().getString( "ext_path") + CFilePath::join( m_strRhodesPath, "/lib/extensions/uri;"), false);
154
154
  RHOSIMCONF().setString( "ext_path", RHOSIMCONF().getString( "ext_path") + CFilePath::join( m_strRhodesPath, "/lib/extensions/timeout;"), false);
155
+ RHOSIMCONF().setString( "ext_path", RHOSIMCONF().getString( "ext_path") + CFilePath::join( m_strRhodesPath, "/lib/extensions/digest;"), false);
155
156
  #endif
156
157
 
157
158
  if ( !rho_rhodesapp_canstartapp(g_strCmdLine.c_str(), " /-,") )
@@ -209,3 +210,30 @@ int main(int argc, char *argv[])
209
210
 
210
211
  return 0;
211
212
  }
213
+
214
+ #ifdef OS_SYMBIAN
215
+ extern "C"
216
+ {
217
+ void rho_sys_replace_current_bundle(const char* path)
218
+ {
219
+ }
220
+
221
+ int rho_sys_delete_folder(const char* path)
222
+ {
223
+ return 0;
224
+ }
225
+ }
226
+ #endif
227
+
228
+ #if defined(OS_MACOSX) && defined(RHODES_EMULATOR)
229
+ extern "C"
230
+ {
231
+ void rho_file_impl_delete_folder(const char* szFolderPath)
232
+ {
233
+ }
234
+
235
+ void rho_file_impl_copy_folders_content_to_another_folder(const char* szSrcFolderPath, const char* szDstFolderPath)
236
+ {
237
+ }
238
+ }
239
+ #endif // OS_MACOSX && RHODES_EMULATOR
@@ -29,6 +29,9 @@ macx {
29
29
  ../../../osx/bin/rholib/librholib.a\
30
30
  ../../../osx/bin/sqlite3/libsqlite3.a\
31
31
  ../../../osx/bin/syncengine/libsyncengine.a
32
+ exists("../../../osx/bin/extensions/extensions.pri") {
33
+ include("../../../osx/bin/extensions/extensions.pri")
34
+ }
32
35
  }
33
36
 
34
37
  win32 {
@@ -130,4 +130,5 @@ SOURCES += ../../common/RhoTime.cpp\
130
130
  ../../common/RhoMath.cpp\
131
131
  ../../common/map/ESRIMapEngine.cpp\
132
132
  ../../common/map/GoogleMapEngine.cpp\
133
- ../../common/map/MapEngine.cpp
133
+ ../../common/map/MapEngine.cpp\
134
+ ../../common/BundleManager.cpp
@@ -183,4 +183,5 @@ SOURCES += ../../ruby/ext/datetimepicker/datetimepicker_wrap.c\
183
183
  ../../ruby/ext/mapview/mapview_wrap.c\
184
184
  ../../ruby/ext/signature/signature_wrap.c\
185
185
  ../../ruby/ext/nativeviewmanager/nativeviewmanager_wrap.c\
186
- ../../ruby/ext/bluetooth/bluetooth_wrap.c
186
+ ../../ruby/ext/bluetooth/bluetooth_wrap.c\
187
+ ../../ruby/enc/encdb.c
@@ -21,6 +21,9 @@ LOCAL_SRC_FILES := \
21
21
  enc/unicode.c \
22
22
  enc/us_ascii.c \
23
23
  enc/utf_8.c \
24
+ enc/encdb.c \
25
+ enc/iso_8859_1.c \
26
+ enc/iso_8859_9.c \
24
27
  enum.c \
25
28
  enumerator.c \
26
29
  error.c \
@@ -342,6 +342,13 @@ Init_class_hierarchy(void)
342
342
  {
343
343
  id_attached = rb_intern("__attached__");
344
344
 
345
+ //RHO
346
+ rb_cBasicObject = 0;
347
+ rb_cObject = 0;
348
+ rb_cModule = 0;
349
+ rb_cClass = 0;
350
+ //RHO
351
+
345
352
  rb_cBasicObject = boot_defclass("BasicObject", 0);
346
353
  rb_cObject = boot_defclass("Object", rb_cBasicObject);
347
354
  rb_cModule = boot_defclass("Module", rb_cObject);
@@ -5155,15 +5155,19 @@ get_exception_sym2type(VALUE sym)
5155
5155
  VALUE sym_inspect;
5156
5156
  static VALUE symRescue, symEnsure, symRetry;
5157
5157
  static VALUE symBreak, symRedo, symNext;
5158
-
5159
- if (symRescue == 0) {
5160
- symRescue = ID2SYM(rb_intern("rescue"));
5161
- symEnsure = ID2SYM(rb_intern("ensure"));
5162
- symRetry = ID2SYM(rb_intern("retry"));
5163
- symBreak = ID2SYM(rb_intern("break"));
5164
- symRedo = ID2SYM(rb_intern("redo"));
5165
- symNext = ID2SYM(rb_intern("next"));
5158
+ //RHO
5159
+ static int cache_version;
5160
+
5161
+ if ((symRescue == 0) || (const_cache_version != cache_version)) {
5162
+ symRescue = ID2SYM(rb_intern("rescue"));
5163
+ symEnsure = ID2SYM(rb_intern("ensure"));
5164
+ symRetry = ID2SYM(rb_intern("retry"));
5165
+ symBreak = ID2SYM(rb_intern("break"));
5166
+ symRedo = ID2SYM(rb_intern("redo"));
5167
+ symNext = ID2SYM(rb_intern("next"));
5168
+ cache_version = const_cache_version;
5166
5169
  }
5170
+ //RHO
5167
5171
 
5168
5172
  if (sym == symRescue) return CATCH_TYPE_RESCUE;
5169
5173
  if (sym == symEnsure) return CATCH_TYPE_ENSURE;
@@ -5239,10 +5243,14 @@ iseq_build_body(rb_iseq_t *iseq, LINK_ANCHOR *anchor,
5239
5243
  * index -> LABEL *label
5240
5244
  */
5241
5245
  static struct st_table *insn_table;
5246
+ //RHO
5247
+ static int cache_version;
5242
5248
 
5243
- if (insn_table == 0) {
5244
- insn_table = insn_make_insn_table();
5249
+ if ((insn_table == 0) || (cache_version != const_cache_version)) {
5250
+ insn_table = insn_make_insn_table();
5251
+ cache_version = const_cache_version;
5245
5252
  }
5253
+ //RHO
5246
5254
 
5247
5255
  for (i=0; i<len; i++) {
5248
5256
  VALUE obj = ptr[i];
@@ -1,5 +1,5 @@
1
1
  ENC_DEFINE("ASCII-8BIT");
2
- ENC_DEFINE("Big5");
2
+ /*ENC_DEFINE("Big5");
3
3
  ENC_DEFINE("Big5-HKSCS");
4
4
  ENC_DEFINE("Big5-UAO");
5
5
  ENC_DEFINE("CP949");
@@ -9,7 +9,9 @@ ENC_DEFINE("EUC-KR");
9
9
  ENC_DEFINE("EUC-TW");
10
10
  ENC_DEFINE("GB18030");
11
11
  ENC_DEFINE("GBK");
12
+ */
12
13
  ENC_DEFINE("ISO-8859-1");
14
+ /*
13
15
  ENC_DEFINE("ISO-8859-2");
14
16
  ENC_DEFINE("ISO-8859-3");
15
17
  ENC_DEFINE("ISO-8859-4");
@@ -17,7 +19,9 @@ ENC_DEFINE("ISO-8859-5");
17
19
  ENC_DEFINE("ISO-8859-6");
18
20
  ENC_DEFINE("ISO-8859-7");
19
21
  ENC_DEFINE("ISO-8859-8");
22
+ */
20
23
  ENC_DEFINE("ISO-8859-9");
24
+ /*
21
25
  ENC_DEFINE("ISO-8859-10");
22
26
  ENC_DEFINE("ISO-8859-11");
23
27
  ENC_DEFINE("ISO-8859-13");
@@ -27,13 +31,16 @@ ENC_DEFINE("ISO-8859-16");
27
31
  ENC_DEFINE("KOI8-R");
28
32
  ENC_DEFINE("KOI8-U");
29
33
  ENC_DEFINE("Shift_JIS");
34
+ */
30
35
  ENC_DEFINE("US-ASCII");
31
36
  ENC_DEFINE("UTF-8");
37
+ /*
32
38
  ENC_DEFINE("UTF-16BE");
33
39
  ENC_DEFINE("UTF-16LE");
34
40
  ENC_DEFINE("UTF-32BE");
35
41
  ENC_DEFINE("UTF-32LE");
36
42
  ENC_DEFINE("Windows-1251");
43
+ */
37
44
  ENC_ALIAS("BINARY", "ASCII-8BIT");
38
45
  ENC_REPLICATE("IBM437", "ASCII-8BIT");
39
46
  ENC_ALIAS("CP437", "IBM437");
@@ -78,13 +85,13 @@ ENC_REPLICATE("macRomania", "ASCII-8BIT");
78
85
  ENC_REPLICATE("macThai", "ASCII-8BIT");
79
86
  ENC_REPLICATE("macTurkish", "ASCII-8BIT");
80
87
  ENC_REPLICATE("macUkraine", "ASCII-8BIT");
81
- ENC_ALIAS("CP950", "Big5");
88
+ /*ENC_ALIAS("CP950", "Big5");
82
89
  ENC_SET_BASE("Big5-HKSCS", "Big5");
83
90
  ENC_ALIAS("CP951", "Big5-HKSCS");
84
91
  ENC_SET_BASE("Big5-UAO", "Big5");
85
92
  ENC_REPLICATE("stateless-ISO-2022-JP", "Emacs-Mule");
86
- ENC_ALIAS("eucJP", "EUC-JP") /* UI-OSF Application Platform Profile for Japanese Environment Version 1.1 */;
87
- ENC_REPLICATE("eucJP-ms", "EUC-JP") /* TOG/JVC CDE/Motif Technical WG */;
93
+ ENC_ALIAS("eucJP", "EUC-JP") // UI-OSF Application Platform Profile for Japanese Environment Version 1.1
94
+ ENC_REPLICATE("eucJP-ms", "EUC-JP") // TOG/JVC CDE/Motif Technical WG
88
95
  ENC_ALIAS("euc-jp-ms", "eucJP-ms");
89
96
  ENC_REPLICATE("CP51932", "EUC-JP");
90
97
  ENC_ALIAS("eucKR", "EUC-KR");
@@ -135,19 +142,22 @@ ENC_ALIAS("CP878", "KOI8-R");
135
142
  ENC_ALIAS("SJIS", "Shift_JIS");
136
143
  ENC_REPLICATE("Windows-31J", "Shift_JIS");
137
144
  ENC_ALIAS("CP932", "Windows-31J");
138
- ENC_ALIAS("csWindows31J", "Windows-31J") /* IANA. IE6 don't accept Windows-31J but csWindows31J. */;
145
+ ENC_ALIAS("csWindows31J", "Windows-31J") // IANA. IE6 don't accept Windows-31J but csWindows31J.
139
146
  ENC_REPLICATE("MacJapanese", "Shift_JIS");
140
147
  ENC_ALIAS("MacJapan", "MacJapanese");
148
+ */
141
149
  ENC_ALIAS("ASCII", "US-ASCII");
142
150
  ENC_ALIAS("ANSI_X3.4-1968", "US-ASCII");
143
151
  ENC_ALIAS("646", "US-ASCII");
152
+ /*
144
153
  ENC_DUMMY("UTF-7");
145
154
  ENC_ALIAS("CP65000", "UTF-7");
155
+ */
146
156
  ENC_ALIAS("CP65001", "UTF-8");
147
157
  ENC_REPLICATE("UTF8-MAC", "UTF-8");
148
158
  ENC_ALIAS("UTF-8-MAC", "UTF8-MAC");
149
- ENC_ALIAS("UTF-8-HFS", "UTF8-MAC") /* Emacs 23.2 */;
150
- ENC_ALIAS("UCS-2BE", "UTF-16BE");
159
+ ENC_ALIAS("UTF-8-HFS", "UTF8-MAC"); // Emacs 23.2
160
+ /*ENC_ALIAS("UCS-2BE", "UTF-16BE");
151
161
  ENC_ALIAS("UCS-4BE", "UTF-32BE");
152
162
  ENC_ALIAS("UCS-4LE", "UTF-32LE");
153
163
  ENC_ALIAS("CP1251", "Windows-1251");
@@ -159,5 +169,5 @@ ENC_REPLICATE("ISO-2022-JP-KDDI", "ISO-2022-JP");
159
169
  ENC_REPLICATE("stateless-ISO-2022-JP-KDDI", "stateless-ISO-2022-JP");
160
170
  ENC_REPLICATE("UTF8-SoftBank", "UTF-8");
161
171
  ENC_REPLICATE("SJIS-SoftBank", "Windows-31J");
162
-
172
+ */
163
173
  #define ENCODING_COUNT 95