rufus-lua-win 5.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +69 -0
  6. data/Rakefile +1 -0
  7. data/lib/rufus/lua/win.rb +18 -0
  8. data/lib/rufus/lua/win/version.rb +7 -0
  9. data/rufus-lua-win.gemspec +23 -0
  10. data/vendor/lua/bin/liblua.dll +0 -0
  11. data/vendor/lua/lib/lua/LuaXml.lua +119 -0
  12. data/vendor/lua/lib/lua/alien.lua +250 -0
  13. data/vendor/lua/lib/lua/alien/core.dll +0 -0
  14. data/vendor/lua/lib/lua/alien/struct.dll +0 -0
  15. data/vendor/lua/lib/lua/base.lua +536 -0
  16. data/vendor/lua/lib/lua/bin.lua +20 -0
  17. data/vendor/lua/lib/lua/bit.dll +0 -0
  18. data/vendor/lua/lib/lua/cdlua.dll +0 -0
  19. data/vendor/lua/lib/lua/cdluacontextplus.dll +0 -0
  20. data/vendor/lua/lib/lua/cdluagl.dll +0 -0
  21. data/vendor/lua/lib/lua/cdluaim.dll +0 -0
  22. data/vendor/lua/lib/lua/cdluapdf.dll +0 -0
  23. data/vendor/lua/lib/lua/copas.lua +543 -0
  24. data/vendor/lua/lib/lua/coxpcall.lua +57 -0
  25. data/vendor/lua/lib/lua/date.lua +745 -0
  26. data/vendor/lua/lib/lua/debug_ext.lua +84 -0
  27. data/vendor/lua/lib/lua/debug_init.lua +2 -0
  28. data/vendor/lua/lib/lua/des56.dll +0 -0
  29. data/vendor/lua/lib/lua/dist/config.lua +109 -0
  30. data/vendor/lua/lib/lua/dist/constraints.lua +271 -0
  31. data/vendor/lua/lib/lua/dist/depends.lua +601 -0
  32. data/vendor/lua/lib/lua/dist/git.lua +307 -0
  33. data/vendor/lua/lib/lua/dist/init.lua +278 -0
  34. data/vendor/lua/lib/lua/dist/manifest.lua +225 -0
  35. data/vendor/lua/lib/lua/dist/package.lua +583 -0
  36. data/vendor/lua/lib/lua/dist/sys.lua +367 -0
  37. data/vendor/lua/lib/lua/dist/utils.lua +130 -0
  38. data/vendor/lua/lib/lua/ex.dll +0 -0
  39. data/vendor/lua/lib/lua/fstable.lua +116 -0
  40. data/vendor/lua/lib/lua/getopt.lua +273 -0
  41. data/vendor/lua/lib/lua/git.lua +5 -0
  42. data/vendor/lua/lib/lua/git/core.dll +0 -0
  43. data/vendor/lua/lib/lua/git/objects.lua +121 -0
  44. data/vendor/lua/lib/lua/git/pack.lua +316 -0
  45. data/vendor/lua/lib/lua/git/protocol.lua +188 -0
  46. data/vendor/lua/lib/lua/git/repo.lua +283 -0
  47. data/vendor/lua/lib/lua/git/util.lua +233 -0
  48. data/vendor/lua/lib/lua/gzio.dll +0 -0
  49. data/vendor/lua/lib/lua/gzip.lua +81 -0
  50. data/vendor/lua/lib/lua/iconv.dll +0 -0
  51. data/vendor/lua/lib/lua/imlua.dll +0 -0
  52. data/vendor/lua/lib/lua/imlua_fftw.dll +0 -0
  53. data/vendor/lua/lib/lua/imlua_jp2.dll +0 -0
  54. data/vendor/lua/lib/lua/imlua_process.dll +0 -0
  55. data/vendor/lua/lib/lua/imlua_process_omp.dll +0 -0
  56. data/vendor/lua/lib/lua/io_ext.lua +115 -0
  57. data/vendor/lua/lib/lua/iuplua.dll +0 -0
  58. data/vendor/lua/lib/lua/iuplua_mglplot.dll +0 -0
  59. data/vendor/lua/lib/lua/iuplua_pplot.dll +0 -0
  60. data/vendor/lua/lib/lua/iupluacd.dll +0 -0
  61. data/vendor/lua/lib/lua/iupluacontrols.dll +0 -0
  62. data/vendor/lua/lib/lua/iupluagl.dll +0 -0
  63. data/vendor/lua/lib/lua/iupluaim.dll +0 -0
  64. data/vendor/lua/lib/lua/iupluaimglib.dll +0 -0
  65. data/vendor/lua/lib/lua/iupluatuio.dll +0 -0
  66. data/vendor/lua/lib/lua/lanes-keeper.lua +302 -0
  67. data/vendor/lua/lib/lua/lanes.lua +591 -0
  68. data/vendor/lua/lib/lua/lanes/core.dll +0 -0
  69. data/vendor/lua/lib/lua/lcs.lua +55 -0
  70. data/vendor/lua/lib/lua/lemock.lua +659 -0
  71. data/vendor/lua/lib/lua/lfs.dll +0 -0
  72. data/vendor/lua/lib/lua/list.lua +375 -0
  73. data/vendor/lua/lib/lua/logging.lua +189 -0
  74. data/vendor/lua/lib/lua/logging/console.lua +22 -0
  75. data/vendor/lua/lib/lua/logging/email.lua +44 -0
  76. data/vendor/lua/lib/lua/logging/file.lua +55 -0
  77. data/vendor/lua/lib/lua/logging/rolling_file.lua +81 -0
  78. data/vendor/lua/lib/lua/logging/socket.lua +35 -0
  79. data/vendor/lua/lib/lua/logging/sql.lua +64 -0
  80. data/vendor/lua/lib/lua/loop/base.lua +68 -0
  81. data/vendor/lua/lib/lua/loop/cached.lua +312 -0
  82. data/vendor/lua/lib/lua/loop/collection/MapWithArrayOfKeys.lua +64 -0
  83. data/vendor/lua/lib/lua/loop/collection/ObjectCache.lua +39 -0
  84. data/vendor/lua/lib/lua/loop/collection/OrderedSet.lua +164 -0
  85. data/vendor/lua/lib/lua/loop/collection/PriorityQueue.lua +86 -0
  86. data/vendor/lua/lib/lua/loop/collection/UnorderedArray.lua +32 -0
  87. data/vendor/lua/lib/lua/loop/collection/UnorderedArraySet.lua +56 -0
  88. data/vendor/lua/lib/lua/loop/compiler/Arguments.lua +108 -0
  89. data/vendor/lua/lib/lua/loop/compiler/Conditional.lua +50 -0
  90. data/vendor/lua/lib/lua/loop/compiler/Expression.lua +215 -0
  91. data/vendor/lua/lib/lua/loop/component/base.lua +221 -0
  92. data/vendor/lua/lib/lua/loop/component/contained.lua +71 -0
  93. data/vendor/lua/lib/lua/loop/component/dynamic.lua +223 -0
  94. data/vendor/lua/lib/lua/loop/component/intercepted.lua +354 -0
  95. data/vendor/lua/lib/lua/loop/component/wrapped.lua +195 -0
  96. data/vendor/lua/lib/lua/loop/debug/Inspector.lua +521 -0
  97. data/vendor/lua/lib/lua/loop/debug/Matcher.lua +192 -0
  98. data/vendor/lua/lib/lua/loop/debug/Verbose.lua +266 -0
  99. data/vendor/lua/lib/lua/loop/debug/Viewer.lua +200 -0
  100. data/vendor/lua/lib/lua/loop/multiple.lua +105 -0
  101. data/vendor/lua/lib/lua/loop/object/Exception.lua +57 -0
  102. data/vendor/lua/lib/lua/loop/object/Publisher.lua +43 -0
  103. data/vendor/lua/lib/lua/loop/object/Wrapper.lua +39 -0
  104. data/vendor/lua/lib/lua/loop/scoped.lua +585 -0
  105. data/vendor/lua/lib/lua/loop/serial/FileStream.lua +48 -0
  106. data/vendor/lua/lib/lua/loop/serial/Serializer.lua +291 -0
  107. data/vendor/lua/lib/lua/loop/serial/SocketStream.lua +51 -0
  108. data/vendor/lua/lib/lua/loop/serial/StringStream.lua +47 -0
  109. data/vendor/lua/lib/lua/loop/simple.lua +75 -0
  110. data/vendor/lua/lib/lua/loop/table.lua +71 -0
  111. data/vendor/lua/lib/lua/loop/thread/CoSocket.lua +416 -0
  112. data/vendor/lua/lib/lua/loop/thread/IOScheduler.lua +170 -0
  113. data/vendor/lua/lib/lua/loop/thread/Scheduler.lua +327 -0
  114. data/vendor/lua/lib/lua/loop/thread/SocketScheduler.lua +88 -0
  115. data/vendor/lua/lib/lua/loop/thread/Timer.lua +54 -0
  116. data/vendor/lua/lib/lua/lpeg.dll +0 -0
  117. data/vendor/lua/lib/lua/ltn12.lua +292 -0
  118. data/vendor/lua/lib/lua/luaXML_lib.dll +0 -0
  119. data/vendor/lua/lib/lua/luacurl.dll +0 -0
  120. data/vendor/lua/lib/lua/luadoc/config.lua +34 -0
  121. data/vendor/lua/lib/lua/luadoc/doclet/debug.lua +46 -0
  122. data/vendor/lua/lib/lua/luadoc/doclet/formatter.lua +84 -0
  123. data/vendor/lua/lib/lua/luadoc/doclet/html.lua +289 -0
  124. data/vendor/lua/lib/lua/luadoc/doclet/html/file.lp +113 -0
  125. data/vendor/lua/lib/lua/luadoc/doclet/html/function.lp +64 -0
  126. data/vendor/lua/lib/lua/luadoc/doclet/html/index.lp +70 -0
  127. data/vendor/lua/lib/lua/luadoc/doclet/html/luadoc.css +286 -0
  128. data/vendor/lua/lib/lua/luadoc/doclet/html/menu.lp +55 -0
  129. data/vendor/lua/lib/lua/luadoc/doclet/html/module.lp +109 -0
  130. data/vendor/lua/lib/lua/luadoc/doclet/html/table.lp +15 -0
  131. data/vendor/lua/lib/lua/luadoc/doclet/raw.lua +12 -0
  132. data/vendor/lua/lib/lua/luadoc/init.lua +58 -0
  133. data/vendor/lua/lib/lua/luadoc/lp.lua +130 -0
  134. data/vendor/lua/lib/lua/luadoc/taglet/standard.lua +495 -0
  135. data/vendor/lua/lib/lua/luadoc/taglet/standard/tags.lua +171 -0
  136. data/vendor/lua/lib/lua/luadoc/util.lua +233 -0
  137. data/vendor/lua/lib/lua/luagl.dll +0 -0
  138. data/vendor/lua/lib/lua/luaglu.dll +0 -0
  139. data/vendor/lua/lib/lua/luaidl.lua +113 -0
  140. data/vendor/lua/lib/lua/luaidl/lex.lua +793 -0
  141. data/vendor/lua/lib/lua/luaidl/pre.lua +149 -0
  142. data/vendor/lua/lib/lua/luaidl/sin.lua +3631 -0
  143. data/vendor/lua/lib/lua/luarocks/add.lua +108 -0
  144. data/vendor/lua/lib/lua/luarocks/admin_remove.lua +87 -0
  145. data/vendor/lua/lib/lua/luarocks/build.lua +330 -0
  146. data/vendor/lua/lib/lua/luarocks/build/builtin.lua +253 -0
  147. data/vendor/lua/lib/lua/luarocks/build/cmake.lua +54 -0
  148. data/vendor/lua/lib/lua/luarocks/build/command.lua +32 -0
  149. data/vendor/lua/lib/lua/luarocks/build/make.lua +92 -0
  150. data/vendor/lua/lib/lua/luarocks/cache.lua +85 -0
  151. data/vendor/lua/lib/lua/luarocks/cfg.lua +449 -0
  152. data/vendor/lua/lib/lua/luarocks/command_line.lua +163 -0
  153. data/vendor/lua/lib/lua/luarocks/deps.lua +654 -0
  154. data/vendor/lua/lib/lua/luarocks/dir.lua +69 -0
  155. data/vendor/lua/lib/lua/luarocks/download.lua +90 -0
  156. data/vendor/lua/lib/lua/luarocks/fetch.lua +321 -0
  157. data/vendor/lua/lib/lua/luarocks/fetch/cvs.lua +44 -0
  158. data/vendor/lua/lib/lua/luarocks/fetch/git.lua +81 -0
  159. data/vendor/lua/lib/lua/luarocks/fetch/git_file.lua +17 -0
  160. data/vendor/lua/lib/lua/luarocks/fetch/hg.lua +54 -0
  161. data/vendor/lua/lib/lua/luarocks/fetch/sscm.lua +42 -0
  162. data/vendor/lua/lib/lua/luarocks/fetch/svn.lua +53 -0
  163. data/vendor/lua/lib/lua/luarocks/fs.lua +40 -0
  164. data/vendor/lua/lib/lua/luarocks/fs/lua.lua +676 -0
  165. data/vendor/lua/lib/lua/luarocks/fs/unix.lua +88 -0
  166. data/vendor/lua/lib/lua/luarocks/fs/unix/tools.lua +325 -0
  167. data/vendor/lua/lib/lua/luarocks/fs/win32.lua +107 -0
  168. data/vendor/lua/lib/lua/luarocks/fs/win32/tools.lua +334 -0
  169. data/vendor/lua/lib/lua/luarocks/help.lua +101 -0
  170. data/vendor/lua/lib/lua/luarocks/index.lua +172 -0
  171. data/vendor/lua/lib/lua/luarocks/install.lua +151 -0
  172. data/vendor/lua/lib/lua/luarocks/list.lua +35 -0
  173. data/vendor/lua/lib/lua/luarocks/loader.lua +228 -0
  174. data/vendor/lua/lib/lua/luarocks/make.lua +71 -0
  175. data/vendor/lua/lib/lua/luarocks/make_manifest.lua +34 -0
  176. data/vendor/lua/lib/lua/luarocks/manif.lua +360 -0
  177. data/vendor/lua/lib/lua/luarocks/manif_core.lua +75 -0
  178. data/vendor/lua/lib/lua/luarocks/new_version.lua +141 -0
  179. data/vendor/lua/lib/lua/luarocks/pack.lua +205 -0
  180. data/vendor/lua/lib/lua/luarocks/path.lua +315 -0
  181. data/vendor/lua/lib/lua/luarocks/persist.lua +173 -0
  182. data/vendor/lua/lib/lua/luarocks/refresh_cache.lua +30 -0
  183. data/vendor/lua/lib/lua/luarocks/remove.lua +135 -0
  184. data/vendor/lua/lib/lua/luarocks/rep.lua +313 -0
  185. data/vendor/lua/lib/lua/luarocks/require.lua +6 -0
  186. data/vendor/lua/lib/lua/luarocks/search.lua +399 -0
  187. data/vendor/lua/lib/lua/luarocks/show.lua +138 -0
  188. data/vendor/lua/lib/lua/luarocks/site_config.lua +23 -0
  189. data/vendor/lua/lib/lua/luarocks/tools/patch.lua +712 -0
  190. data/vendor/lua/lib/lua/luarocks/tools/tar.lua +144 -0
  191. data/vendor/lua/lib/lua/luarocks/tools/zip.lua +245 -0
  192. data/vendor/lua/lib/lua/luarocks/type_check.lua +267 -0
  193. data/vendor/lua/lib/lua/luarocks/unpack.lua +151 -0
  194. data/vendor/lua/lib/lua/luarocks/util.lua +420 -0
  195. data/vendor/lua/lib/lua/luarocks/validate.lua +164 -0
  196. data/vendor/lua/lib/lua/luars232.dll +0 -0
  197. data/vendor/lua/lib/lua/luasql/mysql.dll +0 -0
  198. data/vendor/lua/lib/lua/luasql/postgres.dll +0 -0
  199. data/vendor/lua/lib/lua/luasql/sqlite3.dll +0 -0
  200. data/vendor/lua/lib/lua/luaunit.lua +601 -0
  201. data/vendor/lua/lib/lua/lxp.dll +0 -0
  202. data/vendor/lua/lib/lua/lxp/lom.lua +60 -0
  203. data/vendor/lua/lib/lua/math_ext.lua +27 -0
  204. data/vendor/lua/lib/lua/mbox.lua +53 -0
  205. data/vendor/lua/lib/lua/md5.lua +19 -0
  206. data/vendor/lua/lib/lua/md5/core.dll +0 -0
  207. data/vendor/lua/lib/lua/metalua.lua +0 -0
  208. data/vendor/lua/lib/lua/metalua/ast_to_string.mlua +553 -0
  209. data/vendor/lua/lib/lua/metalua/base.lua +104 -0
  210. data/vendor/lua/lib/lua/metalua/bytecode.lua +0 -0
  211. data/vendor/lua/lib/lua/metalua/clopts.mlua +204 -0
  212. data/vendor/lua/lib/lua/metalua/compiler.lua +3 -0
  213. data/vendor/lua/lib/lua/metalua/dollar.mlua +24 -0
  214. data/vendor/lua/lib/lua/metalua/extension/H-runtime.mlua +216 -0
  215. data/vendor/lua/lib/lua/metalua/extension/H.mlua +22 -0
  216. data/vendor/lua/lib/lua/metalua/extension/anaphoric.mlua +54 -0
  217. data/vendor/lua/lib/lua/metalua/extension/clist.mlua +149 -0
  218. data/vendor/lua/lib/lua/metalua/extension/continue.mlua +53 -0
  219. data/vendor/lua/lib/lua/metalua/extension/localin.mlua +2 -0
  220. data/vendor/lua/lib/lua/metalua/extension/log.mlua +39 -0
  221. data/vendor/lua/lib/lua/metalua/extension/match.mlua +374 -0
  222. data/vendor/lua/lib/lua/metalua/extension/ternary.mlua +10 -0
  223. data/vendor/lua/lib/lua/metalua/extension/trycatch.mlua +189 -0
  224. data/vendor/lua/lib/lua/metalua/extension/types-runtime.mlua +159 -0
  225. data/vendor/lua/lib/lua/metalua/extension/types.mlua +352 -0
  226. data/vendor/lua/lib/lua/metalua/extension/withdo.mlua +30 -0
  227. data/vendor/lua/lib/lua/metalua/extension/xglobal-runtime.lua +41 -0
  228. data/vendor/lua/lib/lua/metalua/extension/xglobal.mlua +20 -0
  229. data/vendor/lua/lib/lua/metalua/extension/xloop.mlua +100 -0
  230. data/vendor/lua/lib/lua/metalua/extension/xmatch.mlua +216 -0
  231. data/vendor/lua/lib/lua/metalua/metaloop.mlua +76 -0
  232. data/vendor/lua/lib/lua/metalua/mlc.lua +0 -0
  233. data/vendor/lua/lib/lua/metalua/mlc_xcall.lua +119 -0
  234. data/vendor/lua/lib/lua/metalua/mlp.lua +0 -0
  235. data/vendor/lua/lib/lua/metalua/package2.lua +101 -0
  236. data/vendor/lua/lib/lua/metalua/runtime.lua +3 -0
  237. data/vendor/lua/lib/lua/metalua/string2.lua +44 -0
  238. data/vendor/lua/lib/lua/metalua/table2.lua +372 -0
  239. data/vendor/lua/lib/lua/metalua/walk.mlua +304 -0
  240. data/vendor/lua/lib/lua/metalua/walk/bindings.mlua +41 -0
  241. data/vendor/lua/lib/lua/metalua/walk/id.mlua +186 -0
  242. data/vendor/lua/lib/lua/metalua/walk/scope.lua +54 -0
  243. data/vendor/lua/lib/lua/mime.lua +87 -0
  244. data/vendor/lua/lib/lua/mime/core.dll +0 -0
  245. data/vendor/lua/lib/lua/mobdebug.lua +1484 -0
  246. data/vendor/lua/lib/lua/modules.lua +16 -0
  247. data/vendor/lua/lib/lua/object.lua +56 -0
  248. data/vendor/lua/lib/lua/oil/Exception.lua +26 -0
  249. data/vendor/lua/lib/lua/oil/arch.lua +27 -0
  250. data/vendor/lua/lib/lua/oil/arch/basic/client.lua +29 -0
  251. data/vendor/lua/lib/lua/oil/arch/basic/common.lua +13 -0
  252. data/vendor/lua/lib/lua/oil/arch/basic/server.lua +27 -0
  253. data/vendor/lua/lib/lua/oil/arch/cooperative/common.lua +10 -0
  254. data/vendor/lua/lib/lua/oil/arch/cooperative/server.lua +16 -0
  255. data/vendor/lua/lib/lua/oil/arch/corba/client.lua +39 -0
  256. data/vendor/lua/lib/lua/oil/arch/corba/common.lua +58 -0
  257. data/vendor/lua/lib/lua/oil/arch/corba/intercepted/client.lua +9 -0
  258. data/vendor/lua/lib/lua/oil/arch/corba/intercepted/server.lua +9 -0
  259. data/vendor/lua/lib/lua/oil/arch/corba/server.lua +35 -0
  260. data/vendor/lua/lib/lua/oil/arch/ludo/byref.lua +18 -0
  261. data/vendor/lua/lib/lua/oil/arch/ludo/client.lua +19 -0
  262. data/vendor/lua/lib/lua/oil/arch/ludo/common.lua +18 -0
  263. data/vendor/lua/lib/lua/oil/arch/ludo/server.lua +19 -0
  264. data/vendor/lua/lib/lua/oil/arch/typed/client.lua +27 -0
  265. data/vendor/lua/lib/lua/oil/arch/typed/common.lua +9 -0
  266. data/vendor/lua/lib/lua/oil/arch/typed/server.lua +18 -0
  267. data/vendor/lua/lib/lua/oil/assert.lua +87 -0
  268. data/vendor/lua/lib/lua/oil/builder.lua +45 -0
  269. data/vendor/lua/lib/lua/oil/builder/basic/client.lua +31 -0
  270. data/vendor/lua/lib/lua/oil/builder/basic/common.lua +11 -0
  271. data/vendor/lua/lib/lua/oil/builder/basic/server.lua +13 -0
  272. data/vendor/lua/lib/lua/oil/builder/cooperative/common.lua +11 -0
  273. data/vendor/lua/lib/lua/oil/builder/cooperative/server.lua +11 -0
  274. data/vendor/lua/lib/lua/oil/builder/corba/client.lua +13 -0
  275. data/vendor/lua/lib/lua/oil/builder/corba/common.lua +24 -0
  276. data/vendor/lua/lib/lua/oil/builder/corba/gencode.lua +13 -0
  277. data/vendor/lua/lib/lua/oil/builder/corba/intercepted/client.lua +11 -0
  278. data/vendor/lua/lib/lua/oil/builder/corba/intercepted/server.lua +11 -0
  279. data/vendor/lua/lib/lua/oil/builder/corba/server.lua +13 -0
  280. data/vendor/lua/lib/lua/oil/builder/lua/client.lua +11 -0
  281. data/vendor/lua/lib/lua/oil/builder/lua/server.lua +12 -0
  282. data/vendor/lua/lib/lua/oil/builder/ludo/byref.lua +13 -0
  283. data/vendor/lua/lib/lua/oil/builder/ludo/client.lua +13 -0
  284. data/vendor/lua/lib/lua/oil/builder/ludo/common.lua +14 -0
  285. data/vendor/lua/lib/lua/oil/builder/ludo/server.lua +13 -0
  286. data/vendor/lua/lib/lua/oil/builder/typed/client.lua +16 -0
  287. data/vendor/lua/lib/lua/oil/builder/typed/server.lua +12 -0
  288. data/vendor/lua/lib/lua/oil/compat.lua +846 -0
  289. data/vendor/lua/lib/lua/oil/component.lua +1 -0
  290. data/vendor/lua/lib/lua/oil/corba/giop.lua +301 -0
  291. data/vendor/lua/lib/lua/oil/corba/giop/Codec.lua +1568 -0
  292. data/vendor/lua/lib/lua/oil/corba/giop/CodecGen.lua +589 -0
  293. data/vendor/lua/lib/lua/oil/corba/giop/Exception.lua +25 -0
  294. data/vendor/lua/lib/lua/oil/corba/giop/Indexer.lua +63 -0
  295. data/vendor/lua/lib/lua/oil/corba/giop/Listener.lua +343 -0
  296. data/vendor/lua/lib/lua/oil/corba/giop/Messenger.lua +228 -0
  297. data/vendor/lua/lib/lua/oil/corba/giop/Referrer.lua +180 -0
  298. data/vendor/lua/lib/lua/oil/corba/giop/Requester.lua +462 -0
  299. data/vendor/lua/lib/lua/oil/corba/idl.lua +597 -0
  300. data/vendor/lua/lib/lua/oil/corba/idl/Compiler.lua +133 -0
  301. data/vendor/lua/lib/lua/oil/corba/idl/Importer.lua +235 -0
  302. data/vendor/lua/lib/lua/oil/corba/idl/Indexer.lua +95 -0
  303. data/vendor/lua/lib/lua/oil/corba/idl/Registry.lua +1821 -0
  304. data/vendor/lua/lib/lua/oil/corba/idl/ir.lua +847 -0
  305. data/vendor/lua/lib/lua/oil/corba/idl/sysex.lua +21 -0
  306. data/vendor/lua/lib/lua/oil/corba/iiop/Profiler.lua +200 -0
  307. data/vendor/lua/lib/lua/oil/corba/intercepted/Listener.lua +158 -0
  308. data/vendor/lua/lib/lua/oil/corba/intercepted/Requester.lua +181 -0
  309. data/vendor/lua/lib/lua/oil/corba/services/event.lua +126 -0
  310. data/vendor/lua/lib/lua/oil/corba/services/event/ConsumerAdmin.lua +50 -0
  311. data/vendor/lua/lib/lua/oil/corba/services/event/EventFactory.lua +15 -0
  312. data/vendor/lua/lib/lua/oil/corba/services/event/EventQueue.lua +37 -0
  313. data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushConsumer.lua +75 -0
  314. data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushSupplier.lua +62 -0
  315. data/vendor/lua/lib/lua/oil/corba/services/event/SingleDeferredDispatcher.lua +60 -0
  316. data/vendor/lua/lib/lua/oil/corba/services/event/SingleSynchronousDispatcher.lua +39 -0
  317. data/vendor/lua/lib/lua/oil/corba/services/event/SupplierAdmin.lua +50 -0
  318. data/vendor/lua/lib/lua/oil/corba/services/naming.lua +436 -0
  319. data/vendor/lua/lib/lua/oil/kernel/base/Acceptor.lua +268 -0
  320. data/vendor/lua/lib/lua/oil/kernel/base/Channels.lua +121 -0
  321. data/vendor/lua/lib/lua/oil/kernel/base/Connector.lua +147 -0
  322. data/vendor/lua/lib/lua/oil/kernel/base/Dispatcher.lua +99 -0
  323. data/vendor/lua/lib/lua/oil/kernel/base/Proxies.lua +86 -0
  324. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/asynchronous.lua +56 -0
  325. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/protected.lua +17 -0
  326. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/synchronous.lua +17 -0
  327. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/utils.lua +29 -0
  328. data/vendor/lua/lib/lua/oil/kernel/base/Receiver.lua +110 -0
  329. data/vendor/lua/lib/lua/oil/kernel/base/Servants.lua +207 -0
  330. data/vendor/lua/lib/lua/oil/kernel/base/Sockets.lua +44 -0
  331. data/vendor/lua/lib/lua/oil/kernel/cooperative/Receiver.lua +139 -0
  332. data/vendor/lua/lib/lua/oil/kernel/intercepted/Listener.lua +47 -0
  333. data/vendor/lua/lib/lua/oil/kernel/intercepted/Requester.lua +58 -0
  334. data/vendor/lua/lib/lua/oil/kernel/lua/Dispatcher.lua +76 -0
  335. data/vendor/lua/lib/lua/oil/kernel/lua/Proxies.lua +69 -0
  336. data/vendor/lua/lib/lua/oil/kernel/typed/Dispatcher.lua +91 -0
  337. data/vendor/lua/lib/lua/oil/kernel/typed/Proxies.lua +153 -0
  338. data/vendor/lua/lib/lua/oil/kernel/typed/Servants.lua +137 -0
  339. data/vendor/lua/lib/lua/oil/ludo/Codec.lua +66 -0
  340. data/vendor/lua/lib/lua/oil/ludo/CodecByRef.lua +103 -0
  341. data/vendor/lua/lib/lua/oil/ludo/Listener.lua +151 -0
  342. data/vendor/lua/lib/lua/oil/ludo/Referrer.lua +72 -0
  343. data/vendor/lua/lib/lua/oil/ludo/Requester.lua +107 -0
  344. data/vendor/lua/lib/lua/oil/oo.lua +1 -0
  345. data/vendor/lua/lib/lua/oil/port.lua +1 -0
  346. data/vendor/lua/lib/lua/oil/properties.lua +57 -0
  347. data/vendor/lua/lib/lua/oil/verbose.lua +133 -0
  348. data/vendor/lua/lib/lua/package_ext.lua +15 -0
  349. data/vendor/lua/lib/lua/parser.lua +268 -0
  350. data/vendor/lua/lib/lua/pl/Date.lua +555 -0
  351. data/vendor/lua/lib/lua/pl/List.lua +613 -0
  352. data/vendor/lua/lib/lua/pl/Map.lua +113 -0
  353. data/vendor/lua/lib/lua/pl/MultiMap.lua +62 -0
  354. data/vendor/lua/lib/lua/pl/OrderedMap.lua +151 -0
  355. data/vendor/lua/lib/lua/pl/Set.lua +153 -0
  356. data/vendor/lua/lib/lua/pl/app.lua +165 -0
  357. data/vendor/lua/lib/lua/pl/array2d.lua +501 -0
  358. data/vendor/lua/lib/lua/pl/class.lua +180 -0
  359. data/vendor/lua/lib/lua/pl/comprehension.lua +286 -0
  360. data/vendor/lua/lib/lua/pl/config.lua +176 -0
  361. data/vendor/lua/lib/lua/pl/data.lua +606 -0
  362. data/vendor/lua/lib/lua/pl/dir.lua +475 -0
  363. data/vendor/lua/lib/lua/pl/file.lua +70 -0
  364. data/vendor/lua/lib/lua/pl/func.lua +376 -0
  365. data/vendor/lua/lib/lua/pl/init.lua +68 -0
  366. data/vendor/lua/lib/lua/pl/input.lua +173 -0
  367. data/vendor/lua/lib/lua/pl/lapp.lua +407 -0
  368. data/vendor/lua/lib/lua/pl/lexer.lua +456 -0
  369. data/vendor/lua/lib/lua/pl/luabalanced.lua +264 -0
  370. data/vendor/lua/lib/lua/pl/operator.lua +201 -0
  371. data/vendor/lua/lib/lua/pl/path.lua +398 -0
  372. data/vendor/lua/lib/lua/pl/permute.lua +63 -0
  373. data/vendor/lua/lib/lua/pl/platf/luajava.lua +101 -0
  374. data/vendor/lua/lib/lua/pl/pretty.lua +285 -0
  375. data/vendor/lua/lib/lua/pl/seq.lua +551 -0
  376. data/vendor/lua/lib/lua/pl/sip.lua +344 -0
  377. data/vendor/lua/lib/lua/pl/strict.lua +70 -0
  378. data/vendor/lua/lib/lua/pl/stringio.lua +158 -0
  379. data/vendor/lua/lib/lua/pl/stringx.lua +440 -0
  380. data/vendor/lua/lib/lua/pl/tablex.lua +817 -0
  381. data/vendor/lua/lib/lua/pl/template.lua +103 -0
  382. data/vendor/lua/lib/lua/pl/test.lua +135 -0
  383. data/vendor/lua/lib/lua/pl/text.lua +243 -0
  384. data/vendor/lua/lib/lua/pl/utils.lua +550 -0
  385. data/vendor/lua/lib/lua/pl/xml.lua +689 -0
  386. data/vendor/lua/lib/lua/profiler.dll +0 -0
  387. data/vendor/lua/lib/lua/re.lua +248 -0
  388. data/vendor/lua/lib/lua/rex_onig.dll +0 -0
  389. data/vendor/lua/lib/lua/rex_pcre.dll +0 -0
  390. data/vendor/lua/lib/lua/rex_posix.dll +0 -0
  391. data/vendor/lua/lib/lua/rings.dll +0 -0
  392. data/vendor/lua/lib/lua/serialize.lua +193 -0
  393. data/vendor/lua/lib/lua/set.lua +149 -0
  394. data/vendor/lua/lib/lua/socket.lua +133 -0
  395. data/vendor/lua/lib/lua/socket/core.dll +0 -0
  396. data/vendor/lua/lib/lua/socket/ftp.lua +281 -0
  397. data/vendor/lua/lib/lua/socket/http.lua +350 -0
  398. data/vendor/lua/lib/lua/socket/smtp.lua +251 -0
  399. data/vendor/lua/lib/lua/socket/tp.lua +123 -0
  400. data/vendor/lua/lib/lua/socket/url.lua +297 -0
  401. data/vendor/lua/lib/lua/ssl.dll +0 -0
  402. data/vendor/lua/lib/lua/ssl.lua +93 -0
  403. data/vendor/lua/lib/lua/ssl/https.lua +138 -0
  404. data/vendor/lua/lib/lua/stable.lua +28 -0
  405. data/vendor/lua/lib/lua/std.lua +16 -0
  406. data/vendor/lua/lib/lua/strbuf.lua +32 -0
  407. data/vendor/lua/lib/lua/strict.lua +45 -0
  408. data/vendor/lua/lib/lua/string_ext.lua +274 -0
  409. data/vendor/lua/lib/lua/table_ext.lua +117 -0
  410. data/vendor/lua/lib/lua/tar.lua +262 -0
  411. data/vendor/lua/lib/lua/task.dll +0 -0
  412. data/vendor/lua/lib/lua/tree.lua +81 -0
  413. data/vendor/lua/lib/lua/unicode.dll +0 -0
  414. data/vendor/lua/lib/lua/verbose_require.lua +11 -0
  415. data/vendor/lua/lib/lua/vstruct.lua +86 -0
  416. data/vendor/lua/lib/lua/vstruct/ast.lua +192 -0
  417. data/vendor/lua/lib/lua/vstruct/ast/Bitpack.lua +33 -0
  418. data/vendor/lua/lib/lua/vstruct/ast/Generator.lua +174 -0
  419. data/vendor/lua/lib/lua/vstruct/ast/IO.lua +45 -0
  420. data/vendor/lua/lib/lua/vstruct/ast/List.lua +56 -0
  421. data/vendor/lua/lib/lua/vstruct/ast/Name.lua +20 -0
  422. data/vendor/lua/lib/lua/vstruct/ast/Repeat.lua +23 -0
  423. data/vendor/lua/lib/lua/vstruct/ast/Root.lua +19 -0
  424. data/vendor/lua/lib/lua/vstruct/ast/Table.lua +65 -0
  425. data/vendor/lua/lib/lua/vstruct/cursor.lua +81 -0
  426. data/vendor/lua/lib/lua/vstruct/io.lua +45 -0
  427. data/vendor/lua/lib/lua/vstruct/io/a.lua +24 -0
  428. data/vendor/lua/lib/lua/vstruct/io/b.lua +28 -0
  429. data/vendor/lua/lib/lua/vstruct/io/bigendian.lua +21 -0
  430. data/vendor/lua/lib/lua/vstruct/io/c.lua +25 -0
  431. data/vendor/lua/lib/lua/vstruct/io/defaults.lua +24 -0
  432. data/vendor/lua/lib/lua/vstruct/io/endianness.lua +41 -0
  433. data/vendor/lua/lib/lua/vstruct/io/f.lua +129 -0
  434. data/vendor/lua/lib/lua/vstruct/io/hostendian.lua +21 -0
  435. data/vendor/lua/lib/lua/vstruct/io/i.lua +42 -0
  436. data/vendor/lua/lib/lua/vstruct/io/littleendian.lua +21 -0
  437. data/vendor/lua/lib/lua/vstruct/io/m.lua +62 -0
  438. data/vendor/lua/lib/lua/vstruct/io/p.lua +23 -0
  439. data/vendor/lua/lib/lua/vstruct/io/s.lua +27 -0
  440. data/vendor/lua/lib/lua/vstruct/io/seekb.lua +18 -0
  441. data/vendor/lua/lib/lua/vstruct/io/seekf.lua +18 -0
  442. data/vendor/lua/lib/lua/vstruct/io/seekto.lua +18 -0
  443. data/vendor/lua/lib/lua/vstruct/io/u.lua +54 -0
  444. data/vendor/lua/lib/lua/vstruct/io/x.lua +34 -0
  445. data/vendor/lua/lib/lua/vstruct/io/z.lua +63 -0
  446. data/vendor/lua/lib/lua/vstruct/lexer.lua +100 -0
  447. data/vendor/lua/lib/lua/vstruct/pack.lua +142 -0
  448. data/vendor/lua/lib/lua/vstruct/test.lua +47 -0
  449. data/vendor/lua/lib/lua/vstruct/test/basic.lua +73 -0
  450. data/vendor/lua/lib/lua/vstruct/test/common.lua +100 -0
  451. data/vendor/lua/lib/lua/vstruct/test/fp-bigendian.lua +56 -0
  452. data/vendor/lua/lib/lua/vstruct/test/fp-littleendian.lua +56 -0
  453. data/vendor/lua/lib/lua/vstruct/test/struct-test-gen.lua +1230 -0
  454. data/vendor/lua/lib/lua/vstruct/unpack.lua +126 -0
  455. data/vendor/lua/lib/lua/wx.dll +0 -0
  456. data/vendor/lua/lib/lua/xml.lua +75 -0
  457. data/vendor/lua/lib/lua/zip.dll +0 -0
  458. data/vendor/lua/lib/lua/zlib.dll +0 -0
  459. metadata +529 -0
@@ -0,0 +1,171 @@
1
+ -------------------------------------------------------------------------------
2
+ -- Handlers for several tags
3
+ -- @release $Id: tags.lua,v 1.8 2007/09/05 12:39:09 tomas Exp $
4
+ -------------------------------------------------------------------------------
5
+
6
+ local luadoc = require "luadoc"
7
+ local util = require "luadoc.util"
8
+ local string = require "string"
9
+ local table = require "table"
10
+ local assert, type, tostring = assert, type, tostring
11
+
12
+ module "luadoc.taglet.standard.tags"
13
+
14
+ -------------------------------------------------------------------------------
15
+
16
+ local function author (tag, block, text)
17
+ block[tag] = block[tag] or {}
18
+ if not text then
19
+ luadoc.logger:warn("author `name' not defined [["..text.."]]: skipping")
20
+ return
21
+ end
22
+ table.insert (block[tag], text)
23
+ end
24
+
25
+ -------------------------------------------------------------------------------
26
+ -- Set the class of a comment block. Classes can be "module", "function",
27
+ -- "table". The first two classes are automatic, extracted from the source code
28
+
29
+ local function class (tag, block, text)
30
+ block[tag] = text
31
+ end
32
+
33
+ -------------------------------------------------------------------------------
34
+
35
+ local function copyright (tag, block, text)
36
+ block[tag] = text
37
+ end
38
+
39
+ -------------------------------------------------------------------------------
40
+
41
+ local function description (tag, block, text)
42
+ block[tag] = text
43
+ end
44
+
45
+ -------------------------------------------------------------------------------
46
+
47
+ local function field (tag, block, text)
48
+ if block["class"] ~= "table" then
49
+ luadoc.logger:warn("documenting `field' for block that is not a `table'")
50
+ end
51
+ block[tag] = block[tag] or {}
52
+
53
+ local _, _, name, desc = string.find(text, "^([_%w%.]+)%s+(.*)")
54
+ assert(name, "field name not defined")
55
+
56
+ table.insert(block[tag], name)
57
+ block[tag][name] = desc
58
+ end
59
+
60
+ -------------------------------------------------------------------------------
61
+ -- Set the name of the comment block. If the block already has a name, issue
62
+ -- an error and do not change the previous value
63
+
64
+ local function name (tag, block, text)
65
+ if block[tag] and block[tag] ~= text then
66
+ luadoc.logger:error(string.format("block name conflict: `%s' -> `%s'", block[tag], text))
67
+ end
68
+
69
+ block[tag] = text
70
+ end
71
+
72
+ -------------------------------------------------------------------------------
73
+ -- Processes a parameter documentation.
74
+ -- @param tag String with the name of the tag (it must be "param" always).
75
+ -- @param block Table with previous information about the block.
76
+ -- @param text String with the current line beeing processed.
77
+
78
+ local function param (tag, block, text)
79
+ block[tag] = block[tag] or {}
80
+ -- TODO: make this pattern more flexible, accepting empty descriptions
81
+ local _, _, name, desc = string.find(text, "^([_%w%.]+)%s+(.*)")
82
+ if not name then
83
+ luadoc.logger:warn("parameter `name' not defined [["..text.."]]: skipping")
84
+ return
85
+ end
86
+ local i = table.foreachi(block[tag], function (i, v)
87
+ if v == name then
88
+ return i
89
+ end
90
+ end)
91
+ if i == nil then
92
+ luadoc.logger:warn(string.format("documenting undefined parameter `%s'", name))
93
+ table.insert(block[tag], name)
94
+ end
95
+ block[tag][name] = desc
96
+ end
97
+
98
+ -------------------------------------------------------------------------------
99
+
100
+ local function release (tag, block, text)
101
+ block[tag] = text
102
+ end
103
+
104
+ -------------------------------------------------------------------------------
105
+
106
+ local function ret (tag, block, text)
107
+ tag = "ret"
108
+ if type(block[tag]) == "string" then
109
+ block[tag] = { block[tag], text }
110
+ elseif type(block[tag]) == "table" then
111
+ table.insert(block[tag], text)
112
+ else
113
+ block[tag] = text
114
+ end
115
+ end
116
+
117
+ -------------------------------------------------------------------------------
118
+ -- @see ret
119
+
120
+ local function see (tag, block, text)
121
+ -- see is always an array
122
+ block[tag] = block[tag] or {}
123
+
124
+ -- remove trailing "."
125
+ text = string.gsub(text, "(.*)%.$", "%1")
126
+
127
+ local s = util.split("%s*,%s*", text)
128
+
129
+ table.foreachi(s, function (_, v)
130
+ table.insert(block[tag], v)
131
+ end)
132
+ end
133
+
134
+ -------------------------------------------------------------------------------
135
+ -- @see ret
136
+
137
+ local function usage (tag, block, text)
138
+ if type(block[tag]) == "string" then
139
+ block[tag] = { block[tag], text }
140
+ elseif type(block[tag]) == "table" then
141
+ table.insert(block[tag], text)
142
+ else
143
+ block[tag] = text
144
+ end
145
+ end
146
+
147
+ -------------------------------------------------------------------------------
148
+
149
+ local handlers = {}
150
+ handlers["author"] = author
151
+ handlers["class"] = class
152
+ handlers["copyright"] = copyright
153
+ handlers["description"] = description
154
+ handlers["field"] = field
155
+ handlers["name"] = name
156
+ handlers["param"] = param
157
+ handlers["release"] = release
158
+ handlers["return"] = ret
159
+ handlers["see"] = see
160
+ handlers["usage"] = usage
161
+
162
+ -------------------------------------------------------------------------------
163
+
164
+ function handle (tag, block, text)
165
+ if not handlers[tag] then
166
+ luadoc.logger:error(string.format("undefined handler for tag `%s'", tag))
167
+ return
168
+ end
169
+ -- assert(handlers[tag], string.format("undefined handler for tag `%s'", tag))
170
+ return handlers[tag](tag, block, text)
171
+ end
@@ -0,0 +1,233 @@
1
+ -------------------------------------------------------------------------------
2
+ -- General utilities.
3
+ -- @release $Id: util.lua,v 1.16 2008/02/17 06:42:51 jasonsantos Exp $
4
+ -------------------------------------------------------------------------------
5
+
6
+ local lfs = require "lfs"
7
+ local type, table, string, io, assert, tostring, setmetatable, pcall = type, table, string, io, assert, tostring, setmetatable, pcall
8
+
9
+ -------------------------------------------------------------------------------
10
+ -- Module with several utilities that could not fit in a specific module
11
+
12
+ module "luadoc.util"
13
+
14
+ -------------------------------------------------------------------------------
15
+ -- Removes spaces from the begining and end of a given string
16
+ -- @param s string to be trimmed
17
+ -- @return trimmed string
18
+
19
+ function trim (s)
20
+ return (string.gsub(s, "^%s*(.-)%s*$", "%1"))
21
+ end
22
+
23
+ -------------------------------------------------------------------------------
24
+ -- Removes spaces from the begining and end of a given string, considering the
25
+ -- string is inside a lua comment.
26
+ -- @param s string to be trimmed
27
+ -- @return trimmed string
28
+ -- @see trim
29
+ -- @see string.gsub
30
+
31
+ function trim_comment (s)
32
+ s = string.gsub(s, "%-%-+(.*)$", "%1")
33
+ return trim(s)
34
+ end
35
+
36
+ -------------------------------------------------------------------------------
37
+ -- Checks if a given line is empty
38
+ -- @param line string with a line
39
+ -- @return true if line is empty, false otherwise
40
+
41
+ function line_empty (line)
42
+ return (string.len(trim(line)) == 0)
43
+ end
44
+
45
+ -------------------------------------------------------------------------------
46
+ -- Appends two string, but if the first one is nil, use to second one
47
+ -- @param str1 first string, can be nil
48
+ -- @param str2 second string
49
+ -- @return str1 .. " " .. str2, or str2 if str1 is nil
50
+
51
+ function concat (str1, str2)
52
+ if str1 == nil or string.len(str1) == 0 then
53
+ return str2
54
+ else
55
+ return str1 .. " " .. str2
56
+ end
57
+ end
58
+
59
+ -------------------------------------------------------------------------------
60
+ -- Split text into a list consisting of the strings in text,
61
+ -- separated by strings matching delim (which may be a pattern).
62
+ -- @param delim if delim is "" then action is the same as %s+ except that
63
+ -- field 1 may be preceeded by leading whitespace
64
+ -- @usage split(",%s*", "Anna, Bob, Charlie,Dolores")
65
+ -- @usage split(""," x y") gives {"x","y"}
66
+ -- @usage split("%s+"," x y") gives {"", "x","y"}
67
+ -- @return array with strings
68
+ -- @see table.concat
69
+
70
+ function split(delim, text)
71
+ local list = {}
72
+ if string.len(text) > 0 then
73
+ delim = delim or ""
74
+ local pos = 1
75
+ -- if delim matches empty string then it would give an endless loop
76
+ if string.find("", delim, 1) and delim ~= "" then
77
+ error("delim matches empty string!")
78
+ end
79
+ local first, last
80
+ while 1 do
81
+ if delim ~= "" then
82
+ first, last = string.find(text, delim, pos)
83
+ else
84
+ first, last = string.find(text, "%s+", pos)
85
+ if first == 1 then
86
+ pos = last+1
87
+ first, last = string.find(text, "%s+", pos)
88
+ end
89
+ end
90
+ if first then -- found?
91
+ table.insert(list, string.sub(text, pos, first-1))
92
+ pos = last+1
93
+ else
94
+ table.insert(list, string.sub(text, pos))
95
+ break
96
+ end
97
+ end
98
+ end
99
+ return list
100
+ end
101
+
102
+ -------------------------------------------------------------------------------
103
+ -- Comments a paragraph.
104
+ -- @param text text to comment with "--", may contain several lines
105
+ -- @return commented text
106
+
107
+ function comment (text)
108
+ text = string.gsub(text, "\n", "\n-- ")
109
+ return "-- " .. text
110
+ end
111
+
112
+ -------------------------------------------------------------------------------
113
+ -- Wrap a string into a paragraph.
114
+ -- @param s string to wrap
115
+ -- @param w width to wrap to [80]
116
+ -- @param i1 indent of first line [0]
117
+ -- @param i2 indent of subsequent lines [0]
118
+ -- @return wrapped paragraph
119
+
120
+ function wrap(s, w, i1, i2)
121
+ w = w or 80
122
+ i1 = i1 or 0
123
+ i2 = i2 or 0
124
+ assert(i1 < w and i2 < w, "the indents must be less than the line width")
125
+ s = string.rep(" ", i1) .. s
126
+ local lstart, len = 1, string.len(s)
127
+ while len - lstart > w do
128
+ local i = lstart + w
129
+ while i > lstart and string.sub(s, i, i) ~= " " do i = i - 1 end
130
+ local j = i
131
+ while j > lstart and string.sub(s, j, j) == " " do j = j - 1 end
132
+ s = string.sub(s, 1, j) .. "\n" .. string.rep(" ", i2) ..
133
+ string.sub(s, i + 1, -1)
134
+ local change = i2 + 1 - (i - j)
135
+ lstart = j + change
136
+ len = len + change
137
+ end
138
+ return s
139
+ end
140
+
141
+ -------------------------------------------------------------------------------
142
+ -- Opens a file, creating the directories if necessary
143
+ -- @param filename full path of the file to open (or create)
144
+ -- @param mode mode of opening
145
+ -- @return file handle
146
+
147
+ function lfs.open (filename, mode)
148
+ local f = io.open(filename, mode)
149
+ if f == nil then
150
+ filename = string.gsub(filename, "\\", "/")
151
+ local dir = ""
152
+ for d in string.gfind(filename, ".-/") do
153
+ dir = dir .. d
154
+ lfs.mkdir(dir)
155
+ end
156
+ f = io.open(filename, mode)
157
+ end
158
+ return f
159
+ end
160
+
161
+
162
+ ----------------------------------------------------------------------------------
163
+ -- Creates a Logger with LuaLogging, if present. Otherwise, creates a mock logger.
164
+ -- @param options a table with options for the logging mechanism
165
+ -- @return logger object that will implement log methods
166
+
167
+ function loadlogengine(options)
168
+ local logenabled = pcall(function()
169
+ require "logging"
170
+ require "logging.console"
171
+ end)
172
+
173
+ local logging = logenabled and logging
174
+
175
+ if logenabled then
176
+ if options.filelog then
177
+ logger = logging.file("luadoc.log") -- use this to get a file log
178
+ else
179
+ logger = logging.console("[%level] %message\n")
180
+ end
181
+
182
+ if options.verbose then
183
+ logger:setLevel(logging.INFO)
184
+ else
185
+ logger:setLevel(logging.WARN)
186
+ end
187
+
188
+ else
189
+ noop = {__index=function(...)
190
+ return function(...)
191
+ -- noop
192
+ end
193
+ end}
194
+
195
+ logger = {}
196
+ setmetatable(logger, noop)
197
+ end
198
+
199
+ return logger
200
+ end
201
+
202
+ -------------------------------------------------------------------------------
203
+ -- Check if the current executing platform is windows
204
+ -- @return true if execution platform is windows
205
+ function iswindows()
206
+ return string.find(_G.package.config:sub(1,1), "\\")
207
+ end
208
+
209
+ -------------------------------------------------------------------------------
210
+ -- Removes comment markers from the beginning of a string, leaves spaces alone.
211
+ -- @param s string to be trimmed
212
+ -- @return trimmed string
213
+ -- @see trim_comment
214
+
215
+ function no_trim_comment (s)
216
+ s = string.gsub(trim(s), "%-%-+ (.*)$", "%1")
217
+ return s
218
+ end
219
+
220
+ -------------------------------------------------------------------------------
221
+ -- Appends two strings using original line-end, but if the first one is nil, use to second one.
222
+ -- to be used when using the text without removal of line ends and indentation
223
+ -- @param str1 first string, can be nil
224
+ -- @param str2 second string
225
+ -- @return str1 .. "\n" .. str2, or str2 if str1 is nil
226
+
227
+ function no_concat (str1, str2)
228
+ if str1 == nil or string.len(str1) == 0 then
229
+ return str2
230
+ else
231
+ return str1 .. "\n" .. str2
232
+ end
233
+ end
@@ -0,0 +1,113 @@
1
+ --
2
+ -- Project: LuaIDL
3
+ -- Author: Ricardo Cosme <rcosme@tecgraf.puc-rio.br>
4
+ -- Filename: init.lua
5
+ --
6
+ local assert = assert
7
+ local error = error
8
+ local pcall = pcall
9
+ local require = require
10
+ local type = type
11
+ local unpack = unpack
12
+
13
+ local io = require "io"
14
+ local os = require "os"
15
+ local string = require "string"
16
+
17
+ module 'luaidl'
18
+
19
+ local preprocessor = require 'luaidl.pre'
20
+ local parser = require 'luaidl.sin'
21
+
22
+ VERSION = '1.0.5'
23
+
24
+ ---
25
+ -- Auxiliar functions
26
+ --------------------------------------------------------------------------
27
+
28
+ local function parseAux(idl, options)
29
+ local status, output = pcall(parser.parse, idl, options)
30
+ if status then
31
+ return unpack(output)
32
+ else
33
+ return nil, output
34
+ end
35
+ end
36
+ --------------------------------------------------------------------------
37
+
38
+
39
+ ---
40
+ -- API
41
+ --------------------------------------------------------------------------
42
+
43
+ --- Preprocesses an IDL code.
44
+ --
45
+ -- @param idl String with IDL code.
46
+ -- @param options (optional)Table with preprocessor options, the available keys are:
47
+ -- 'incpath', a table with include paths;
48
+ -- 'filename', the IDL filename.
49
+ -- @return String with the given IDL preprocessed.
50
+ function pre(idl, options)
51
+ return preprocessor.run(idl, options)
52
+ end
53
+
54
+ --- Preprocesses an IDL file.
55
+ --
56
+ -- @param filename The IDL filename.
57
+ -- @param options (optional)Table with preprocessor options, the available keys are:
58
+ -- 'incpath', a table with include paths.
59
+ -- @return String with the given IDL preprocessed.
60
+ -- @see pre
61
+ function prefile(filename, options)
62
+ local _type = type(filename)
63
+ if (_type ~= "string") then
64
+ error(string.format("bad argument #1 to 'prefile' (filename expected, got %s)", _type), 2)
65
+ end --if
66
+ local fh, msg = io.open(filename)
67
+ if not fh then
68
+ error(msg, 2)
69
+ end --if
70
+ if not options then
71
+ options = { }
72
+ end
73
+ options.filename = filename
74
+ local str = pre(fh:read('*a'), options)
75
+ fh:close()
76
+ return str
77
+ end
78
+
79
+ --- Parses an IDL code.
80
+ --
81
+ -- @param idl String with IDL code.
82
+ -- @param options (optional)Table with parser and preprocessor options, the available keys are:
83
+ -- 'callbacks', a table of callback methods;
84
+ -- 'incpath', a table with include paths;
85
+ -- 'filename',the IDL filename.
86
+ -- @return A graph(lua table),
87
+ -- that represents an IDL definition in Lua, for each IDL definition found.
88
+ function parse(idl, options)
89
+ idl = pre(idl, options)
90
+ return parseAux(idl, options)
91
+ end
92
+
93
+ --- Parses an IDL file.
94
+ -- Calls the method 'prefile' with
95
+ -- the given arguments, and so it parses the output of 'prefile'
96
+ -- calling the method 'parse'.
97
+ -- @param filename The IDL filename.
98
+ -- @param options (optional)Table with parser and preprocessor options, the available keys are:
99
+ -- 'callbacks', a table of callback methods;
100
+ -- 'incpath', a table with include paths.
101
+ -- @return A graph(lua table),
102
+ -- that represents an IDL definition in Lua, for each IDL definition found.
103
+ -- @see prefile
104
+ -- @see parse
105
+ function parsefile(filename, options)
106
+ local _type = type(filename)
107
+ if (_type ~= "string") then
108
+ error(string.format("bad argument #1 to 'parsefile' (filename expected, got %s)", _type), 2)
109
+ end
110
+ local stridl = prefile(filename, options)
111
+ return parseAux(stridl, options)
112
+ end
113
+ --------------------------------------------------------------------------