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.
- checksums.yaml +7 -0
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +69 -0
- data/Rakefile +1 -0
- data/lib/rufus/lua/win.rb +18 -0
- data/lib/rufus/lua/win/version.rb +7 -0
- data/rufus-lua-win.gemspec +23 -0
- data/vendor/lua/bin/liblua.dll +0 -0
- data/vendor/lua/lib/lua/LuaXml.lua +119 -0
- data/vendor/lua/lib/lua/alien.lua +250 -0
- data/vendor/lua/lib/lua/alien/core.dll +0 -0
- data/vendor/lua/lib/lua/alien/struct.dll +0 -0
- data/vendor/lua/lib/lua/base.lua +536 -0
- data/vendor/lua/lib/lua/bin.lua +20 -0
- data/vendor/lua/lib/lua/bit.dll +0 -0
- data/vendor/lua/lib/lua/cdlua.dll +0 -0
- data/vendor/lua/lib/lua/cdluacontextplus.dll +0 -0
- data/vendor/lua/lib/lua/cdluagl.dll +0 -0
- data/vendor/lua/lib/lua/cdluaim.dll +0 -0
- data/vendor/lua/lib/lua/cdluapdf.dll +0 -0
- data/vendor/lua/lib/lua/copas.lua +543 -0
- data/vendor/lua/lib/lua/coxpcall.lua +57 -0
- data/vendor/lua/lib/lua/date.lua +745 -0
- data/vendor/lua/lib/lua/debug_ext.lua +84 -0
- data/vendor/lua/lib/lua/debug_init.lua +2 -0
- data/vendor/lua/lib/lua/des56.dll +0 -0
- data/vendor/lua/lib/lua/dist/config.lua +109 -0
- data/vendor/lua/lib/lua/dist/constraints.lua +271 -0
- data/vendor/lua/lib/lua/dist/depends.lua +601 -0
- data/vendor/lua/lib/lua/dist/git.lua +307 -0
- data/vendor/lua/lib/lua/dist/init.lua +278 -0
- data/vendor/lua/lib/lua/dist/manifest.lua +225 -0
- data/vendor/lua/lib/lua/dist/package.lua +583 -0
- data/vendor/lua/lib/lua/dist/sys.lua +367 -0
- data/vendor/lua/lib/lua/dist/utils.lua +130 -0
- data/vendor/lua/lib/lua/ex.dll +0 -0
- data/vendor/lua/lib/lua/fstable.lua +116 -0
- data/vendor/lua/lib/lua/getopt.lua +273 -0
- data/vendor/lua/lib/lua/git.lua +5 -0
- data/vendor/lua/lib/lua/git/core.dll +0 -0
- data/vendor/lua/lib/lua/git/objects.lua +121 -0
- data/vendor/lua/lib/lua/git/pack.lua +316 -0
- data/vendor/lua/lib/lua/git/protocol.lua +188 -0
- data/vendor/lua/lib/lua/git/repo.lua +283 -0
- data/vendor/lua/lib/lua/git/util.lua +233 -0
- data/vendor/lua/lib/lua/gzio.dll +0 -0
- data/vendor/lua/lib/lua/gzip.lua +81 -0
- data/vendor/lua/lib/lua/iconv.dll +0 -0
- data/vendor/lua/lib/lua/imlua.dll +0 -0
- data/vendor/lua/lib/lua/imlua_fftw.dll +0 -0
- data/vendor/lua/lib/lua/imlua_jp2.dll +0 -0
- data/vendor/lua/lib/lua/imlua_process.dll +0 -0
- data/vendor/lua/lib/lua/imlua_process_omp.dll +0 -0
- data/vendor/lua/lib/lua/io_ext.lua +115 -0
- data/vendor/lua/lib/lua/iuplua.dll +0 -0
- data/vendor/lua/lib/lua/iuplua_mglplot.dll +0 -0
- data/vendor/lua/lib/lua/iuplua_pplot.dll +0 -0
- data/vendor/lua/lib/lua/iupluacd.dll +0 -0
- data/vendor/lua/lib/lua/iupluacontrols.dll +0 -0
- data/vendor/lua/lib/lua/iupluagl.dll +0 -0
- data/vendor/lua/lib/lua/iupluaim.dll +0 -0
- data/vendor/lua/lib/lua/iupluaimglib.dll +0 -0
- data/vendor/lua/lib/lua/iupluatuio.dll +0 -0
- data/vendor/lua/lib/lua/lanes-keeper.lua +302 -0
- data/vendor/lua/lib/lua/lanes.lua +591 -0
- data/vendor/lua/lib/lua/lanes/core.dll +0 -0
- data/vendor/lua/lib/lua/lcs.lua +55 -0
- data/vendor/lua/lib/lua/lemock.lua +659 -0
- data/vendor/lua/lib/lua/lfs.dll +0 -0
- data/vendor/lua/lib/lua/list.lua +375 -0
- data/vendor/lua/lib/lua/logging.lua +189 -0
- data/vendor/lua/lib/lua/logging/console.lua +22 -0
- data/vendor/lua/lib/lua/logging/email.lua +44 -0
- data/vendor/lua/lib/lua/logging/file.lua +55 -0
- data/vendor/lua/lib/lua/logging/rolling_file.lua +81 -0
- data/vendor/lua/lib/lua/logging/socket.lua +35 -0
- data/vendor/lua/lib/lua/logging/sql.lua +64 -0
- data/vendor/lua/lib/lua/loop/base.lua +68 -0
- data/vendor/lua/lib/lua/loop/cached.lua +312 -0
- data/vendor/lua/lib/lua/loop/collection/MapWithArrayOfKeys.lua +64 -0
- data/vendor/lua/lib/lua/loop/collection/ObjectCache.lua +39 -0
- data/vendor/lua/lib/lua/loop/collection/OrderedSet.lua +164 -0
- data/vendor/lua/lib/lua/loop/collection/PriorityQueue.lua +86 -0
- data/vendor/lua/lib/lua/loop/collection/UnorderedArray.lua +32 -0
- data/vendor/lua/lib/lua/loop/collection/UnorderedArraySet.lua +56 -0
- data/vendor/lua/lib/lua/loop/compiler/Arguments.lua +108 -0
- data/vendor/lua/lib/lua/loop/compiler/Conditional.lua +50 -0
- data/vendor/lua/lib/lua/loop/compiler/Expression.lua +215 -0
- data/vendor/lua/lib/lua/loop/component/base.lua +221 -0
- data/vendor/lua/lib/lua/loop/component/contained.lua +71 -0
- data/vendor/lua/lib/lua/loop/component/dynamic.lua +223 -0
- data/vendor/lua/lib/lua/loop/component/intercepted.lua +354 -0
- data/vendor/lua/lib/lua/loop/component/wrapped.lua +195 -0
- data/vendor/lua/lib/lua/loop/debug/Inspector.lua +521 -0
- data/vendor/lua/lib/lua/loop/debug/Matcher.lua +192 -0
- data/vendor/lua/lib/lua/loop/debug/Verbose.lua +266 -0
- data/vendor/lua/lib/lua/loop/debug/Viewer.lua +200 -0
- data/vendor/lua/lib/lua/loop/multiple.lua +105 -0
- data/vendor/lua/lib/lua/loop/object/Exception.lua +57 -0
- data/vendor/lua/lib/lua/loop/object/Publisher.lua +43 -0
- data/vendor/lua/lib/lua/loop/object/Wrapper.lua +39 -0
- data/vendor/lua/lib/lua/loop/scoped.lua +585 -0
- data/vendor/lua/lib/lua/loop/serial/FileStream.lua +48 -0
- data/vendor/lua/lib/lua/loop/serial/Serializer.lua +291 -0
- data/vendor/lua/lib/lua/loop/serial/SocketStream.lua +51 -0
- data/vendor/lua/lib/lua/loop/serial/StringStream.lua +47 -0
- data/vendor/lua/lib/lua/loop/simple.lua +75 -0
- data/vendor/lua/lib/lua/loop/table.lua +71 -0
- data/vendor/lua/lib/lua/loop/thread/CoSocket.lua +416 -0
- data/vendor/lua/lib/lua/loop/thread/IOScheduler.lua +170 -0
- data/vendor/lua/lib/lua/loop/thread/Scheduler.lua +327 -0
- data/vendor/lua/lib/lua/loop/thread/SocketScheduler.lua +88 -0
- data/vendor/lua/lib/lua/loop/thread/Timer.lua +54 -0
- data/vendor/lua/lib/lua/lpeg.dll +0 -0
- data/vendor/lua/lib/lua/ltn12.lua +292 -0
- data/vendor/lua/lib/lua/luaXML_lib.dll +0 -0
- data/vendor/lua/lib/lua/luacurl.dll +0 -0
- data/vendor/lua/lib/lua/luadoc/config.lua +34 -0
- data/vendor/lua/lib/lua/luadoc/doclet/debug.lua +46 -0
- data/vendor/lua/lib/lua/luadoc/doclet/formatter.lua +84 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html.lua +289 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/file.lp +113 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/function.lp +64 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/index.lp +70 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/luadoc.css +286 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/menu.lp +55 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/module.lp +109 -0
- data/vendor/lua/lib/lua/luadoc/doclet/html/table.lp +15 -0
- data/vendor/lua/lib/lua/luadoc/doclet/raw.lua +12 -0
- data/vendor/lua/lib/lua/luadoc/init.lua +58 -0
- data/vendor/lua/lib/lua/luadoc/lp.lua +130 -0
- data/vendor/lua/lib/lua/luadoc/taglet/standard.lua +495 -0
- data/vendor/lua/lib/lua/luadoc/taglet/standard/tags.lua +171 -0
- data/vendor/lua/lib/lua/luadoc/util.lua +233 -0
- data/vendor/lua/lib/lua/luagl.dll +0 -0
- data/vendor/lua/lib/lua/luaglu.dll +0 -0
- data/vendor/lua/lib/lua/luaidl.lua +113 -0
- data/vendor/lua/lib/lua/luaidl/lex.lua +793 -0
- data/vendor/lua/lib/lua/luaidl/pre.lua +149 -0
- data/vendor/lua/lib/lua/luaidl/sin.lua +3631 -0
- data/vendor/lua/lib/lua/luarocks/add.lua +108 -0
- data/vendor/lua/lib/lua/luarocks/admin_remove.lua +87 -0
- data/vendor/lua/lib/lua/luarocks/build.lua +330 -0
- data/vendor/lua/lib/lua/luarocks/build/builtin.lua +253 -0
- data/vendor/lua/lib/lua/luarocks/build/cmake.lua +54 -0
- data/vendor/lua/lib/lua/luarocks/build/command.lua +32 -0
- data/vendor/lua/lib/lua/luarocks/build/make.lua +92 -0
- data/vendor/lua/lib/lua/luarocks/cache.lua +85 -0
- data/vendor/lua/lib/lua/luarocks/cfg.lua +449 -0
- data/vendor/lua/lib/lua/luarocks/command_line.lua +163 -0
- data/vendor/lua/lib/lua/luarocks/deps.lua +654 -0
- data/vendor/lua/lib/lua/luarocks/dir.lua +69 -0
- data/vendor/lua/lib/lua/luarocks/download.lua +90 -0
- data/vendor/lua/lib/lua/luarocks/fetch.lua +321 -0
- data/vendor/lua/lib/lua/luarocks/fetch/cvs.lua +44 -0
- data/vendor/lua/lib/lua/luarocks/fetch/git.lua +81 -0
- data/vendor/lua/lib/lua/luarocks/fetch/git_file.lua +17 -0
- data/vendor/lua/lib/lua/luarocks/fetch/hg.lua +54 -0
- data/vendor/lua/lib/lua/luarocks/fetch/sscm.lua +42 -0
- data/vendor/lua/lib/lua/luarocks/fetch/svn.lua +53 -0
- data/vendor/lua/lib/lua/luarocks/fs.lua +40 -0
- data/vendor/lua/lib/lua/luarocks/fs/lua.lua +676 -0
- data/vendor/lua/lib/lua/luarocks/fs/unix.lua +88 -0
- data/vendor/lua/lib/lua/luarocks/fs/unix/tools.lua +325 -0
- data/vendor/lua/lib/lua/luarocks/fs/win32.lua +107 -0
- data/vendor/lua/lib/lua/luarocks/fs/win32/tools.lua +334 -0
- data/vendor/lua/lib/lua/luarocks/help.lua +101 -0
- data/vendor/lua/lib/lua/luarocks/index.lua +172 -0
- data/vendor/lua/lib/lua/luarocks/install.lua +151 -0
- data/vendor/lua/lib/lua/luarocks/list.lua +35 -0
- data/vendor/lua/lib/lua/luarocks/loader.lua +228 -0
- data/vendor/lua/lib/lua/luarocks/make.lua +71 -0
- data/vendor/lua/lib/lua/luarocks/make_manifest.lua +34 -0
- data/vendor/lua/lib/lua/luarocks/manif.lua +360 -0
- data/vendor/lua/lib/lua/luarocks/manif_core.lua +75 -0
- data/vendor/lua/lib/lua/luarocks/new_version.lua +141 -0
- data/vendor/lua/lib/lua/luarocks/pack.lua +205 -0
- data/vendor/lua/lib/lua/luarocks/path.lua +315 -0
- data/vendor/lua/lib/lua/luarocks/persist.lua +173 -0
- data/vendor/lua/lib/lua/luarocks/refresh_cache.lua +30 -0
- data/vendor/lua/lib/lua/luarocks/remove.lua +135 -0
- data/vendor/lua/lib/lua/luarocks/rep.lua +313 -0
- data/vendor/lua/lib/lua/luarocks/require.lua +6 -0
- data/vendor/lua/lib/lua/luarocks/search.lua +399 -0
- data/vendor/lua/lib/lua/luarocks/show.lua +138 -0
- data/vendor/lua/lib/lua/luarocks/site_config.lua +23 -0
- data/vendor/lua/lib/lua/luarocks/tools/patch.lua +712 -0
- data/vendor/lua/lib/lua/luarocks/tools/tar.lua +144 -0
- data/vendor/lua/lib/lua/luarocks/tools/zip.lua +245 -0
- data/vendor/lua/lib/lua/luarocks/type_check.lua +267 -0
- data/vendor/lua/lib/lua/luarocks/unpack.lua +151 -0
- data/vendor/lua/lib/lua/luarocks/util.lua +420 -0
- data/vendor/lua/lib/lua/luarocks/validate.lua +164 -0
- data/vendor/lua/lib/lua/luars232.dll +0 -0
- data/vendor/lua/lib/lua/luasql/mysql.dll +0 -0
- data/vendor/lua/lib/lua/luasql/postgres.dll +0 -0
- data/vendor/lua/lib/lua/luasql/sqlite3.dll +0 -0
- data/vendor/lua/lib/lua/luaunit.lua +601 -0
- data/vendor/lua/lib/lua/lxp.dll +0 -0
- data/vendor/lua/lib/lua/lxp/lom.lua +60 -0
- data/vendor/lua/lib/lua/math_ext.lua +27 -0
- data/vendor/lua/lib/lua/mbox.lua +53 -0
- data/vendor/lua/lib/lua/md5.lua +19 -0
- data/vendor/lua/lib/lua/md5/core.dll +0 -0
- data/vendor/lua/lib/lua/metalua.lua +0 -0
- data/vendor/lua/lib/lua/metalua/ast_to_string.mlua +553 -0
- data/vendor/lua/lib/lua/metalua/base.lua +104 -0
- data/vendor/lua/lib/lua/metalua/bytecode.lua +0 -0
- data/vendor/lua/lib/lua/metalua/clopts.mlua +204 -0
- data/vendor/lua/lib/lua/metalua/compiler.lua +3 -0
- data/vendor/lua/lib/lua/metalua/dollar.mlua +24 -0
- data/vendor/lua/lib/lua/metalua/extension/H-runtime.mlua +216 -0
- data/vendor/lua/lib/lua/metalua/extension/H.mlua +22 -0
- data/vendor/lua/lib/lua/metalua/extension/anaphoric.mlua +54 -0
- data/vendor/lua/lib/lua/metalua/extension/clist.mlua +149 -0
- data/vendor/lua/lib/lua/metalua/extension/continue.mlua +53 -0
- data/vendor/lua/lib/lua/metalua/extension/localin.mlua +2 -0
- data/vendor/lua/lib/lua/metalua/extension/log.mlua +39 -0
- data/vendor/lua/lib/lua/metalua/extension/match.mlua +374 -0
- data/vendor/lua/lib/lua/metalua/extension/ternary.mlua +10 -0
- data/vendor/lua/lib/lua/metalua/extension/trycatch.mlua +189 -0
- data/vendor/lua/lib/lua/metalua/extension/types-runtime.mlua +159 -0
- data/vendor/lua/lib/lua/metalua/extension/types.mlua +352 -0
- data/vendor/lua/lib/lua/metalua/extension/withdo.mlua +30 -0
- data/vendor/lua/lib/lua/metalua/extension/xglobal-runtime.lua +41 -0
- data/vendor/lua/lib/lua/metalua/extension/xglobal.mlua +20 -0
- data/vendor/lua/lib/lua/metalua/extension/xloop.mlua +100 -0
- data/vendor/lua/lib/lua/metalua/extension/xmatch.mlua +216 -0
- data/vendor/lua/lib/lua/metalua/metaloop.mlua +76 -0
- data/vendor/lua/lib/lua/metalua/mlc.lua +0 -0
- data/vendor/lua/lib/lua/metalua/mlc_xcall.lua +119 -0
- data/vendor/lua/lib/lua/metalua/mlp.lua +0 -0
- data/vendor/lua/lib/lua/metalua/package2.lua +101 -0
- data/vendor/lua/lib/lua/metalua/runtime.lua +3 -0
- data/vendor/lua/lib/lua/metalua/string2.lua +44 -0
- data/vendor/lua/lib/lua/metalua/table2.lua +372 -0
- data/vendor/lua/lib/lua/metalua/walk.mlua +304 -0
- data/vendor/lua/lib/lua/metalua/walk/bindings.mlua +41 -0
- data/vendor/lua/lib/lua/metalua/walk/id.mlua +186 -0
- data/vendor/lua/lib/lua/metalua/walk/scope.lua +54 -0
- data/vendor/lua/lib/lua/mime.lua +87 -0
- data/vendor/lua/lib/lua/mime/core.dll +0 -0
- data/vendor/lua/lib/lua/mobdebug.lua +1484 -0
- data/vendor/lua/lib/lua/modules.lua +16 -0
- data/vendor/lua/lib/lua/object.lua +56 -0
- data/vendor/lua/lib/lua/oil/Exception.lua +26 -0
- data/vendor/lua/lib/lua/oil/arch.lua +27 -0
- data/vendor/lua/lib/lua/oil/arch/basic/client.lua +29 -0
- data/vendor/lua/lib/lua/oil/arch/basic/common.lua +13 -0
- data/vendor/lua/lib/lua/oil/arch/basic/server.lua +27 -0
- data/vendor/lua/lib/lua/oil/arch/cooperative/common.lua +10 -0
- data/vendor/lua/lib/lua/oil/arch/cooperative/server.lua +16 -0
- data/vendor/lua/lib/lua/oil/arch/corba/client.lua +39 -0
- data/vendor/lua/lib/lua/oil/arch/corba/common.lua +58 -0
- data/vendor/lua/lib/lua/oil/arch/corba/intercepted/client.lua +9 -0
- data/vendor/lua/lib/lua/oil/arch/corba/intercepted/server.lua +9 -0
- data/vendor/lua/lib/lua/oil/arch/corba/server.lua +35 -0
- data/vendor/lua/lib/lua/oil/arch/ludo/byref.lua +18 -0
- data/vendor/lua/lib/lua/oil/arch/ludo/client.lua +19 -0
- data/vendor/lua/lib/lua/oil/arch/ludo/common.lua +18 -0
- data/vendor/lua/lib/lua/oil/arch/ludo/server.lua +19 -0
- data/vendor/lua/lib/lua/oil/arch/typed/client.lua +27 -0
- data/vendor/lua/lib/lua/oil/arch/typed/common.lua +9 -0
- data/vendor/lua/lib/lua/oil/arch/typed/server.lua +18 -0
- data/vendor/lua/lib/lua/oil/assert.lua +87 -0
- data/vendor/lua/lib/lua/oil/builder.lua +45 -0
- data/vendor/lua/lib/lua/oil/builder/basic/client.lua +31 -0
- data/vendor/lua/lib/lua/oil/builder/basic/common.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/basic/server.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/cooperative/common.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/cooperative/server.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/corba/client.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/corba/common.lua +24 -0
- data/vendor/lua/lib/lua/oil/builder/corba/gencode.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/corba/intercepted/client.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/corba/intercepted/server.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/corba/server.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/lua/client.lua +11 -0
- data/vendor/lua/lib/lua/oil/builder/lua/server.lua +12 -0
- data/vendor/lua/lib/lua/oil/builder/ludo/byref.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/ludo/client.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/ludo/common.lua +14 -0
- data/vendor/lua/lib/lua/oil/builder/ludo/server.lua +13 -0
- data/vendor/lua/lib/lua/oil/builder/typed/client.lua +16 -0
- data/vendor/lua/lib/lua/oil/builder/typed/server.lua +12 -0
- data/vendor/lua/lib/lua/oil/compat.lua +846 -0
- data/vendor/lua/lib/lua/oil/component.lua +1 -0
- data/vendor/lua/lib/lua/oil/corba/giop.lua +301 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Codec.lua +1568 -0
- data/vendor/lua/lib/lua/oil/corba/giop/CodecGen.lua +589 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Exception.lua +25 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Indexer.lua +63 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Listener.lua +343 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Messenger.lua +228 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Referrer.lua +180 -0
- data/vendor/lua/lib/lua/oil/corba/giop/Requester.lua +462 -0
- data/vendor/lua/lib/lua/oil/corba/idl.lua +597 -0
- data/vendor/lua/lib/lua/oil/corba/idl/Compiler.lua +133 -0
- data/vendor/lua/lib/lua/oil/corba/idl/Importer.lua +235 -0
- data/vendor/lua/lib/lua/oil/corba/idl/Indexer.lua +95 -0
- data/vendor/lua/lib/lua/oil/corba/idl/Registry.lua +1821 -0
- data/vendor/lua/lib/lua/oil/corba/idl/ir.lua +847 -0
- data/vendor/lua/lib/lua/oil/corba/idl/sysex.lua +21 -0
- data/vendor/lua/lib/lua/oil/corba/iiop/Profiler.lua +200 -0
- data/vendor/lua/lib/lua/oil/corba/intercepted/Listener.lua +158 -0
- data/vendor/lua/lib/lua/oil/corba/intercepted/Requester.lua +181 -0
- data/vendor/lua/lib/lua/oil/corba/services/event.lua +126 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/ConsumerAdmin.lua +50 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/EventFactory.lua +15 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/EventQueue.lua +37 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushConsumer.lua +75 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushSupplier.lua +62 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/SingleDeferredDispatcher.lua +60 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/SingleSynchronousDispatcher.lua +39 -0
- data/vendor/lua/lib/lua/oil/corba/services/event/SupplierAdmin.lua +50 -0
- data/vendor/lua/lib/lua/oil/corba/services/naming.lua +436 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Acceptor.lua +268 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Channels.lua +121 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Connector.lua +147 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Dispatcher.lua +99 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Proxies.lua +86 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Proxies/asynchronous.lua +56 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Proxies/protected.lua +17 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Proxies/synchronous.lua +17 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Proxies/utils.lua +29 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Receiver.lua +110 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Servants.lua +207 -0
- data/vendor/lua/lib/lua/oil/kernel/base/Sockets.lua +44 -0
- data/vendor/lua/lib/lua/oil/kernel/cooperative/Receiver.lua +139 -0
- data/vendor/lua/lib/lua/oil/kernel/intercepted/Listener.lua +47 -0
- data/vendor/lua/lib/lua/oil/kernel/intercepted/Requester.lua +58 -0
- data/vendor/lua/lib/lua/oil/kernel/lua/Dispatcher.lua +76 -0
- data/vendor/lua/lib/lua/oil/kernel/lua/Proxies.lua +69 -0
- data/vendor/lua/lib/lua/oil/kernel/typed/Dispatcher.lua +91 -0
- data/vendor/lua/lib/lua/oil/kernel/typed/Proxies.lua +153 -0
- data/vendor/lua/lib/lua/oil/kernel/typed/Servants.lua +137 -0
- data/vendor/lua/lib/lua/oil/ludo/Codec.lua +66 -0
- data/vendor/lua/lib/lua/oil/ludo/CodecByRef.lua +103 -0
- data/vendor/lua/lib/lua/oil/ludo/Listener.lua +151 -0
- data/vendor/lua/lib/lua/oil/ludo/Referrer.lua +72 -0
- data/vendor/lua/lib/lua/oil/ludo/Requester.lua +107 -0
- data/vendor/lua/lib/lua/oil/oo.lua +1 -0
- data/vendor/lua/lib/lua/oil/port.lua +1 -0
- data/vendor/lua/lib/lua/oil/properties.lua +57 -0
- data/vendor/lua/lib/lua/oil/verbose.lua +133 -0
- data/vendor/lua/lib/lua/package_ext.lua +15 -0
- data/vendor/lua/lib/lua/parser.lua +268 -0
- data/vendor/lua/lib/lua/pl/Date.lua +555 -0
- data/vendor/lua/lib/lua/pl/List.lua +613 -0
- data/vendor/lua/lib/lua/pl/Map.lua +113 -0
- data/vendor/lua/lib/lua/pl/MultiMap.lua +62 -0
- data/vendor/lua/lib/lua/pl/OrderedMap.lua +151 -0
- data/vendor/lua/lib/lua/pl/Set.lua +153 -0
- data/vendor/lua/lib/lua/pl/app.lua +165 -0
- data/vendor/lua/lib/lua/pl/array2d.lua +501 -0
- data/vendor/lua/lib/lua/pl/class.lua +180 -0
- data/vendor/lua/lib/lua/pl/comprehension.lua +286 -0
- data/vendor/lua/lib/lua/pl/config.lua +176 -0
- data/vendor/lua/lib/lua/pl/data.lua +606 -0
- data/vendor/lua/lib/lua/pl/dir.lua +475 -0
- data/vendor/lua/lib/lua/pl/file.lua +70 -0
- data/vendor/lua/lib/lua/pl/func.lua +376 -0
- data/vendor/lua/lib/lua/pl/init.lua +68 -0
- data/vendor/lua/lib/lua/pl/input.lua +173 -0
- data/vendor/lua/lib/lua/pl/lapp.lua +407 -0
- data/vendor/lua/lib/lua/pl/lexer.lua +456 -0
- data/vendor/lua/lib/lua/pl/luabalanced.lua +264 -0
- data/vendor/lua/lib/lua/pl/operator.lua +201 -0
- data/vendor/lua/lib/lua/pl/path.lua +398 -0
- data/vendor/lua/lib/lua/pl/permute.lua +63 -0
- data/vendor/lua/lib/lua/pl/platf/luajava.lua +101 -0
- data/vendor/lua/lib/lua/pl/pretty.lua +285 -0
- data/vendor/lua/lib/lua/pl/seq.lua +551 -0
- data/vendor/lua/lib/lua/pl/sip.lua +344 -0
- data/vendor/lua/lib/lua/pl/strict.lua +70 -0
- data/vendor/lua/lib/lua/pl/stringio.lua +158 -0
- data/vendor/lua/lib/lua/pl/stringx.lua +440 -0
- data/vendor/lua/lib/lua/pl/tablex.lua +817 -0
- data/vendor/lua/lib/lua/pl/template.lua +103 -0
- data/vendor/lua/lib/lua/pl/test.lua +135 -0
- data/vendor/lua/lib/lua/pl/text.lua +243 -0
- data/vendor/lua/lib/lua/pl/utils.lua +550 -0
- data/vendor/lua/lib/lua/pl/xml.lua +689 -0
- data/vendor/lua/lib/lua/profiler.dll +0 -0
- data/vendor/lua/lib/lua/re.lua +248 -0
- data/vendor/lua/lib/lua/rex_onig.dll +0 -0
- data/vendor/lua/lib/lua/rex_pcre.dll +0 -0
- data/vendor/lua/lib/lua/rex_posix.dll +0 -0
- data/vendor/lua/lib/lua/rings.dll +0 -0
- data/vendor/lua/lib/lua/serialize.lua +193 -0
- data/vendor/lua/lib/lua/set.lua +149 -0
- data/vendor/lua/lib/lua/socket.lua +133 -0
- data/vendor/lua/lib/lua/socket/core.dll +0 -0
- data/vendor/lua/lib/lua/socket/ftp.lua +281 -0
- data/vendor/lua/lib/lua/socket/http.lua +350 -0
- data/vendor/lua/lib/lua/socket/smtp.lua +251 -0
- data/vendor/lua/lib/lua/socket/tp.lua +123 -0
- data/vendor/lua/lib/lua/socket/url.lua +297 -0
- data/vendor/lua/lib/lua/ssl.dll +0 -0
- data/vendor/lua/lib/lua/ssl.lua +93 -0
- data/vendor/lua/lib/lua/ssl/https.lua +138 -0
- data/vendor/lua/lib/lua/stable.lua +28 -0
- data/vendor/lua/lib/lua/std.lua +16 -0
- data/vendor/lua/lib/lua/strbuf.lua +32 -0
- data/vendor/lua/lib/lua/strict.lua +45 -0
- data/vendor/lua/lib/lua/string_ext.lua +274 -0
- data/vendor/lua/lib/lua/table_ext.lua +117 -0
- data/vendor/lua/lib/lua/tar.lua +262 -0
- data/vendor/lua/lib/lua/task.dll +0 -0
- data/vendor/lua/lib/lua/tree.lua +81 -0
- data/vendor/lua/lib/lua/unicode.dll +0 -0
- data/vendor/lua/lib/lua/verbose_require.lua +11 -0
- data/vendor/lua/lib/lua/vstruct.lua +86 -0
- data/vendor/lua/lib/lua/vstruct/ast.lua +192 -0
- data/vendor/lua/lib/lua/vstruct/ast/Bitpack.lua +33 -0
- data/vendor/lua/lib/lua/vstruct/ast/Generator.lua +174 -0
- data/vendor/lua/lib/lua/vstruct/ast/IO.lua +45 -0
- data/vendor/lua/lib/lua/vstruct/ast/List.lua +56 -0
- data/vendor/lua/lib/lua/vstruct/ast/Name.lua +20 -0
- data/vendor/lua/lib/lua/vstruct/ast/Repeat.lua +23 -0
- data/vendor/lua/lib/lua/vstruct/ast/Root.lua +19 -0
- data/vendor/lua/lib/lua/vstruct/ast/Table.lua +65 -0
- data/vendor/lua/lib/lua/vstruct/cursor.lua +81 -0
- data/vendor/lua/lib/lua/vstruct/io.lua +45 -0
- data/vendor/lua/lib/lua/vstruct/io/a.lua +24 -0
- data/vendor/lua/lib/lua/vstruct/io/b.lua +28 -0
- data/vendor/lua/lib/lua/vstruct/io/bigendian.lua +21 -0
- data/vendor/lua/lib/lua/vstruct/io/c.lua +25 -0
- data/vendor/lua/lib/lua/vstruct/io/defaults.lua +24 -0
- data/vendor/lua/lib/lua/vstruct/io/endianness.lua +41 -0
- data/vendor/lua/lib/lua/vstruct/io/f.lua +129 -0
- data/vendor/lua/lib/lua/vstruct/io/hostendian.lua +21 -0
- data/vendor/lua/lib/lua/vstruct/io/i.lua +42 -0
- data/vendor/lua/lib/lua/vstruct/io/littleendian.lua +21 -0
- data/vendor/lua/lib/lua/vstruct/io/m.lua +62 -0
- data/vendor/lua/lib/lua/vstruct/io/p.lua +23 -0
- data/vendor/lua/lib/lua/vstruct/io/s.lua +27 -0
- data/vendor/lua/lib/lua/vstruct/io/seekb.lua +18 -0
- data/vendor/lua/lib/lua/vstruct/io/seekf.lua +18 -0
- data/vendor/lua/lib/lua/vstruct/io/seekto.lua +18 -0
- data/vendor/lua/lib/lua/vstruct/io/u.lua +54 -0
- data/vendor/lua/lib/lua/vstruct/io/x.lua +34 -0
- data/vendor/lua/lib/lua/vstruct/io/z.lua +63 -0
- data/vendor/lua/lib/lua/vstruct/lexer.lua +100 -0
- data/vendor/lua/lib/lua/vstruct/pack.lua +142 -0
- data/vendor/lua/lib/lua/vstruct/test.lua +47 -0
- data/vendor/lua/lib/lua/vstruct/test/basic.lua +73 -0
- data/vendor/lua/lib/lua/vstruct/test/common.lua +100 -0
- data/vendor/lua/lib/lua/vstruct/test/fp-bigendian.lua +56 -0
- data/vendor/lua/lib/lua/vstruct/test/fp-littleendian.lua +56 -0
- data/vendor/lua/lib/lua/vstruct/test/struct-test-gen.lua +1230 -0
- data/vendor/lua/lib/lua/vstruct/unpack.lua +126 -0
- data/vendor/lua/lib/lua/wx.dll +0 -0
- data/vendor/lua/lib/lua/xml.lua +75 -0
- data/vendor/lua/lib/lua/zip.dll +0 -0
- data/vendor/lua/lib/lua/zlib.dll +0 -0
- metadata +529 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 8ed9195d631c653242a1a4b5f8247af3d569ad52
|
|
4
|
+
data.tar.gz: 75ab729a6b7ee3482afb45b426d2e212e5f7e81f
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: a78148645ffd4c6a20598a374ea0b2a08d22a928dc3c0e25b2080a253ea9104af51f35906182c6cff3d8a6a2f0bb01c31da0a902d173466523a1230e83fbfd02
|
|
7
|
+
data.tar.gz: 031ed845cd2a4893ddc0ba5a54dfa228b61b8fea76752341dc9fa3a01abcd0cb48efc05c50b85f00c6b08ed356f7435eee0bce8563ab0659fd8164662b71c16f
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Copyright (c) 2014 Stas Ukolov
|
|
2
|
+
|
|
3
|
+
MIT License
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Rufus::Lua::Win
|
|
2
|
+
|
|
3
|
+
[](http://badge.fury.io/rb/rufus-lua-win)
|
|
4
|
+
|
|
5
|
+
Provides Lua binary on Windows.
|
|
6
|
+
|
|
7
|
+
Embedding Lua into Ruby on Windows has two issues:
|
|
8
|
+
|
|
9
|
+
1. There is no standard binary distributive for Lua
|
|
10
|
+
2. Lua way of searching for libraries (rocks) fails
|
|
11
|
+
|
|
12
|
+
So, this gem embeds binary Lua (from LuaDist)
|
|
13
|
+
and patches package.path and package.cpath.
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
You don't need to download, install or compile any Lua distribution.
|
|
18
|
+
Just add this line to your application's Gemfile:
|
|
19
|
+
|
|
20
|
+
gem 'rufus-lua-win'
|
|
21
|
+
|
|
22
|
+
And then execute:
|
|
23
|
+
|
|
24
|
+
$ bundle
|
|
25
|
+
|
|
26
|
+
Or install it yourself as:
|
|
27
|
+
|
|
28
|
+
$ gem install rufus-lua-win
|
|
29
|
+
|
|
30
|
+
## Usage
|
|
31
|
+
|
|
32
|
+
Add two lines to Gemfile (in *that* order):
|
|
33
|
+
|
|
34
|
+
gem 'rufus-lua-win' if Gem.win_platform?
|
|
35
|
+
gem 'rufus-lua'
|
|
36
|
+
|
|
37
|
+
Rufus::Lua::Win will setup environment variables, so Rufus::Lua could load.
|
|
38
|
+
|
|
39
|
+
If not using bundler, just:
|
|
40
|
+
|
|
41
|
+
```ruby
|
|
42
|
+
require 'rufus/lua/win' if Gem.win_platform?
|
|
43
|
+
require 'rufus/lua'
|
|
44
|
+
|
|
45
|
+
s=Rufus::Lua::State.new
|
|
46
|
+
s.eval "require 'lpeg'"
|
|
47
|
+
...
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Lua Path
|
|
51
|
+
|
|
52
|
+
Rufus::Lua::Win overrides standard Lua search paths to point to its own
|
|
53
|
+
Lua libraries.
|
|
54
|
+
|
|
55
|
+
Paths like `./?.lua` or `./?.dll` are excluded, since they are not very useful
|
|
56
|
+
in embedded environment.
|
|
57
|
+
|
|
58
|
+
If you like to `require` your own files inside Rufus::Lua - put them in
|
|
59
|
+
separate folder and add it to package.path (or package.cpath).
|
|
60
|
+
|
|
61
|
+
## Credits
|
|
62
|
+
|
|
63
|
+
* [Lua](http://www.lua.org/)
|
|
64
|
+
* [LuaDist](http://luadist.org/)
|
|
65
|
+
* [Rufus::Lua](https://github.com/jmettraux/rufus-lua)
|
|
66
|
+
|
|
67
|
+
## See also
|
|
68
|
+
|
|
69
|
+
* [Rufus::Lua::Moon](https://github.com/ukoloff/rufus-lua-moon) to use MoonScript
|
data/Rakefile
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require "bundler/gem_tasks"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
require "rufus/lua/win/version"
|
|
2
|
+
|
|
3
|
+
module Rufus
|
|
4
|
+
module Lua
|
|
5
|
+
module Win
|
|
6
|
+
def self.inject
|
|
7
|
+
dll = File.expand_path '../../../../vendor/lua/bin/liblua.dll', __FILE__
|
|
8
|
+
rocks = File.expand_path '../../lib/lua', dll
|
|
9
|
+
|
|
10
|
+
ENV['LUA_LIB']=dll
|
|
11
|
+
ENV['LUA_PATH']=['', '/init'].map{|x| File.expand_path "?#{x}.lua", rocks}*';'
|
|
12
|
+
ENV['LUA_CPATH']=File.expand_path "?.dll", rocks
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
inject if Gem.win_platform?
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
require 'rufus/lua/win/version'
|
|
5
|
+
|
|
6
|
+
Gem::Specification.new do |spec|
|
|
7
|
+
spec.name = "rufus-lua-win"
|
|
8
|
+
spec.version = Rufus::Lua::Win::VERSION
|
|
9
|
+
spec.authors = ["Stas Ukolov"]
|
|
10
|
+
spec.email = ["ukoloff@gmail.com"]
|
|
11
|
+
spec.description = 'Provides Lua binary on Windows'
|
|
12
|
+
spec.summary = ''
|
|
13
|
+
spec.homepage = "https://github.com/ukoloff/rufus-lua-win"
|
|
14
|
+
spec.license = "MIT"
|
|
15
|
+
|
|
16
|
+
spec.files = `git ls-files`.split($/)
|
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
|
+
spec.require_paths = ["lib"]
|
|
20
|
+
|
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
|
22
|
+
spec.add_development_dependency "rake"
|
|
23
|
+
end
|
|
Binary file
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
require("LuaXML_lib")
|
|
2
|
+
|
|
3
|
+
local base = _G
|
|
4
|
+
local xml = xml
|
|
5
|
+
module("xml")
|
|
6
|
+
|
|
7
|
+
-- symbolic name for tag index, this allows accessing the tag by var[xml.TAG]
|
|
8
|
+
TAG = 0
|
|
9
|
+
|
|
10
|
+
-- sets or returns tag of a LuaXML object
|
|
11
|
+
function tag(var,tag)
|
|
12
|
+
if base.type(var)~="table" then return end
|
|
13
|
+
if base.type(tag)=="nil" then
|
|
14
|
+
return var[TAG]
|
|
15
|
+
end
|
|
16
|
+
var[TAG] = tag
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
-- creates a new LuaXML object either by setting the metatable of an existing Lua table or by setting its tag
|
|
20
|
+
function new(arg)
|
|
21
|
+
if base.type(arg)=="table" then
|
|
22
|
+
base.setmetatable(arg,{__index=xml, __tostring=xml.str})
|
|
23
|
+
return arg
|
|
24
|
+
end
|
|
25
|
+
local var={}
|
|
26
|
+
base.setmetatable(var,{__index=xml, __tostring=xml.str})
|
|
27
|
+
if base.type(arg)=="string" then var[TAG]=arg end
|
|
28
|
+
return var
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
-- appends a new subordinate LuaXML object to an existing one, optionally sets tag
|
|
32
|
+
function append(var,tag)
|
|
33
|
+
if base.type(var)~="table" then return end
|
|
34
|
+
local newVar = new(tag)
|
|
35
|
+
var[#var+1] = newVar
|
|
36
|
+
return newVar
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
-- converts any Lua var into an XML string
|
|
40
|
+
function str(var,indent,tagValue)
|
|
41
|
+
if base.type(var)=="nil" then return end
|
|
42
|
+
local indent = indent or 0
|
|
43
|
+
local indentStr=""
|
|
44
|
+
for i = 1,indent do indentStr=indentStr.." " end
|
|
45
|
+
local tableStr=""
|
|
46
|
+
|
|
47
|
+
if base.type(var)=="table" then
|
|
48
|
+
local tag = var[0] or tagValue or base.type(var)
|
|
49
|
+
local s = indentStr.."<"..tag
|
|
50
|
+
for k,v in base.pairs(var) do -- attributes
|
|
51
|
+
if base.type(k)=="string" then
|
|
52
|
+
if base.type(v)=="table" and k~="_M" then -- otherwise recursiveness imminent
|
|
53
|
+
tableStr = tableStr..str(v,indent+1,k)
|
|
54
|
+
else
|
|
55
|
+
s = s.." "..k.."=\""..encode(base.tostring(v)).."\""
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
if #var==0 and #tableStr==0 then
|
|
60
|
+
s = s.." />\n"
|
|
61
|
+
elseif #var==1 and base.type(var[1])~="table" and #tableStr==0 then -- single element
|
|
62
|
+
s = s..">"..encode(base.tostring(var[1])).."</"..tag..">\n"
|
|
63
|
+
else
|
|
64
|
+
s = s..">\n"
|
|
65
|
+
for k,v in base.ipairs(var) do -- elements
|
|
66
|
+
if base.type(v)=="string" then
|
|
67
|
+
s = s..indentStr.." "..encode(v).." \n"
|
|
68
|
+
else
|
|
69
|
+
s = s..str(v,indent+1)
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
s=s..tableStr..indentStr.."</"..tag..">\n"
|
|
73
|
+
end
|
|
74
|
+
return s
|
|
75
|
+
else
|
|
76
|
+
local tag = base.type(var)
|
|
77
|
+
return indentStr.."<"..tag.."> "..encode(base.tostring(var)).." </"..tag..">\n"
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
-- saves a Lua var as xml file
|
|
83
|
+
function save(var,filename)
|
|
84
|
+
if not var then return end
|
|
85
|
+
if not filename or #filename==0 then return end
|
|
86
|
+
local file = base.io.open(filename,"w")
|
|
87
|
+
file:write("<?xml version=\"1.0\"?>\n<!-- file \"",filename, "\", generated by LuaXML -->\n\n")
|
|
88
|
+
file:write(str(var))
|
|
89
|
+
base.io.close(file)
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
-- recursively parses a Lua table for a substatement fitting to the provided tag and attribute
|
|
94
|
+
function find(var, tag, attributeKey,attributeValue)
|
|
95
|
+
-- check input:
|
|
96
|
+
if base.type(var)~="table" then return end
|
|
97
|
+
if base.type(tag)=="string" and #tag==0 then tag=nil end
|
|
98
|
+
if base.type(attributeKey)~="string" or #attributeKey==0 then attributeKey=nil end
|
|
99
|
+
if base.type(attributeValue)=="string" and #attributeValue==0 then attributeValue=nil end
|
|
100
|
+
-- compare this table:
|
|
101
|
+
if tag~=nil then
|
|
102
|
+
if var[0]==tag and ( attributeValue == nil or var[attributeKey]==attributeValue ) then
|
|
103
|
+
base.setmetatable(var,{__index=xml, __tostring=xml.str})
|
|
104
|
+
return var
|
|
105
|
+
end
|
|
106
|
+
else
|
|
107
|
+
if attributeValue == nil or var[attributeKey]==attributeValue then
|
|
108
|
+
base.setmetatable(var,{__index=xml, __tostring=xml.str})
|
|
109
|
+
return var
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
-- recursively parse subtags:
|
|
113
|
+
for k,v in base.ipairs(var) do
|
|
114
|
+
if base.type(v)=="table" then
|
|
115
|
+
local ret = find(v, tag, attributeKey,attributeValue)
|
|
116
|
+
if ret ~= nil then return ret end
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
end
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
local core = require "alien.core"
|
|
4
|
+
local io = require "io"
|
|
5
|
+
|
|
6
|
+
local pairs, ipairs = pairs, ipairs
|
|
7
|
+
local setmetatable = setmetatable
|
|
8
|
+
local error = error
|
|
9
|
+
local pcall = pcall
|
|
10
|
+
local type = type
|
|
11
|
+
local rawset = rawset
|
|
12
|
+
local unpack = unpack
|
|
13
|
+
local math = math
|
|
14
|
+
local print = print
|
|
15
|
+
|
|
16
|
+
local _M = alien
|
|
17
|
+
|
|
18
|
+
_M.loaded = {}
|
|
19
|
+
|
|
20
|
+
local load_library, find_library = {}, {}
|
|
21
|
+
|
|
22
|
+
local function find_library_helper(libname, opt)
|
|
23
|
+
local expr = '/[^() ]*lib' .. libname .. '\.so[^() ]*'
|
|
24
|
+
local cmd = '/sbin/ldconfig ' .. opt ..
|
|
25
|
+
' 2>/dev/null | egrep -o "' .. expr .. '"'
|
|
26
|
+
local pipe = io.popen(cmd)
|
|
27
|
+
if pipe then
|
|
28
|
+
local res = pipe:read()
|
|
29
|
+
pipe:close()
|
|
30
|
+
return res and res:match("([^%s]*)")
|
|
31
|
+
end
|
|
32
|
+
return nil
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
function find_library.linux(libname)
|
|
36
|
+
return find_library_helper(libname, "-p")
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
function find_library.bsd(libname)
|
|
40
|
+
return find_library_helper(libname, "-r")
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
function find_library.darwin(libname)
|
|
44
|
+
local ok, lib = pcall(core.load, libname .. ".dylib")
|
|
45
|
+
if ok then return lib end
|
|
46
|
+
ok, lib = pcall(core.load, libname .. ".framework/" .. libname)
|
|
47
|
+
if ok then return lib end
|
|
48
|
+
return nil
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
local function load_library_helper(libname, libext)
|
|
52
|
+
if libname:match("/") or libname:match("%" .. libext) then
|
|
53
|
+
return core.load(libname)
|
|
54
|
+
else
|
|
55
|
+
local ok, lib = pcall(core.load, "lib" .. libname .. libext)
|
|
56
|
+
if not ok then
|
|
57
|
+
ok, lib = pcall(core.load, "./lib" .. libname .. libext)
|
|
58
|
+
if not ok then
|
|
59
|
+
local name = find_library[core.platform](libname)
|
|
60
|
+
if name then
|
|
61
|
+
lib = core.load(name)
|
|
62
|
+
else
|
|
63
|
+
error("library " .. libname .. " not found")
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
return lib
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
function load_library.linux(libname)
|
|
72
|
+
return load_library_helper(libname, ".so")
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
load_library.bsd = load_library.linux
|
|
76
|
+
|
|
77
|
+
function load_library.darwin(libname)
|
|
78
|
+
return load_library_helper(libname, ".dylib")
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
setmetatable(load_library, { __index = function (t, plat)
|
|
82
|
+
return core.load
|
|
83
|
+
end } )
|
|
84
|
+
|
|
85
|
+
function load_library.windows(libname)
|
|
86
|
+
return core.load(libname)
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
setmetatable(_M.loaded, { __index = function (t, libname)
|
|
90
|
+
local lib =
|
|
91
|
+
load_library[core.platform](libname)
|
|
92
|
+
t[libname] = lib
|
|
93
|
+
return lib
|
|
94
|
+
end, __mode = "kv" })
|
|
95
|
+
|
|
96
|
+
setmetatable(_M, { __index = _M.loaded })
|
|
97
|
+
|
|
98
|
+
for name, f in pairs(core) do
|
|
99
|
+
_M[name] = f
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
function _M.load(libname)
|
|
103
|
+
return _M.loaded[libname]
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
function _M.callback(f, ...)
|
|
107
|
+
local cb = core.callback(f)
|
|
108
|
+
cb.types(cb, ...)
|
|
109
|
+
return cb
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
local array_methods = {}
|
|
113
|
+
|
|
114
|
+
local function array_next(arr, i)
|
|
115
|
+
if i < arr.length then
|
|
116
|
+
return i + 1, arr[i + 1]
|
|
117
|
+
else
|
|
118
|
+
return nil
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
function array_methods:ipairs()
|
|
123
|
+
return array_next, self, 0
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
local function array_get(arr, key)
|
|
127
|
+
if type(key) == "number" then
|
|
128
|
+
if key < 1 or key > arr.length then
|
|
129
|
+
error("array access out of bounds")
|
|
130
|
+
end
|
|
131
|
+
local offset = (key - 1) * arr.size + 1
|
|
132
|
+
return arr.buffer:get(offset, arr.type)
|
|
133
|
+
else
|
|
134
|
+
return array_methods[key]
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
local function array_set(arr, key, val)
|
|
139
|
+
if type(key) == "number" then
|
|
140
|
+
if key < 1 or key > arr.length then
|
|
141
|
+
error("array access out of bounds")
|
|
142
|
+
end
|
|
143
|
+
local offset = (key - 1) * arr.size + 1
|
|
144
|
+
arr.buffer:set(offset, val, arr.type)
|
|
145
|
+
if arr.type == "pointer" then
|
|
146
|
+
arr.pinned[key] = val
|
|
147
|
+
end
|
|
148
|
+
else
|
|
149
|
+
rawset(arr, key, val)
|
|
150
|
+
end
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
function _M.array(t, length, init)
|
|
154
|
+
local ok, size = pcall(core.sizeof, t)
|
|
155
|
+
if not ok then
|
|
156
|
+
error("type " .. t .. " does not exist")
|
|
157
|
+
end
|
|
158
|
+
if type(length) == "table" then
|
|
159
|
+
init = length
|
|
160
|
+
length = #length
|
|
161
|
+
end
|
|
162
|
+
local arr = { type = t, length = length, size = size, pinned = {} }
|
|
163
|
+
setmetatable(arr, { __index = array_get, __newindex = array_set })
|
|
164
|
+
if type(init) == "userdata" then
|
|
165
|
+
arr.buffer = init
|
|
166
|
+
else
|
|
167
|
+
arr.buffer = core.buffer(size * length)
|
|
168
|
+
if type(init) == "table" then
|
|
169
|
+
for i = 1, length do
|
|
170
|
+
if type(init[i]) == "string" then
|
|
171
|
+
local offset = (i - 1) * size + 1
|
|
172
|
+
arr.pinned[i] = alien.buffer(#init[i] + 1)
|
|
173
|
+
arr.buffer:set(offset, arr.pinned[i], "pointer")
|
|
174
|
+
end
|
|
175
|
+
arr[i] = init[i]
|
|
176
|
+
end
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
return arr
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
local function struct_new(s_proto, ptr)
|
|
183
|
+
local buf = core.buffer(ptr or s_proto.size)
|
|
184
|
+
local function struct_get(_, key)
|
|
185
|
+
if s_proto.offsets[key] then
|
|
186
|
+
return buf:get(s_proto.offsets[key] + 1, s_proto.types[key])
|
|
187
|
+
else
|
|
188
|
+
error("field " .. key .. " does not exist")
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
local function struct_set(_, key, val)
|
|
192
|
+
if s_proto.offsets[key] then
|
|
193
|
+
buf:set(s_proto.offsets[key] + 1, val, s_proto.types[key])
|
|
194
|
+
else
|
|
195
|
+
error("field " .. key .. " does not exist")
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
return setmetatable({}, { __index = struct_get, __newindex = struct_set,
|
|
199
|
+
__call = function () return buf end })
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
local function struct_byval(s_proto)
|
|
203
|
+
local types = {}
|
|
204
|
+
local size = s_proto.size
|
|
205
|
+
for i = 0, size - 1, 4 do
|
|
206
|
+
if size - i == 1 then
|
|
207
|
+
types[#types + 1] = "char"
|
|
208
|
+
elseif size - i == 2 then
|
|
209
|
+
types[#types + 1] = "short"
|
|
210
|
+
else
|
|
211
|
+
types[#types + 1] = "int"
|
|
212
|
+
end
|
|
213
|
+
end
|
|
214
|
+
return unpack(types)
|
|
215
|
+
end
|
|
216
|
+
|
|
217
|
+
function _M.defstruct(t)
|
|
218
|
+
local off = 0
|
|
219
|
+
local names, offsets, types = {}, {}, {}
|
|
220
|
+
for _, field in ipairs(t) do
|
|
221
|
+
local name, type = field[1], field[2]
|
|
222
|
+
names[#names + 1] = name
|
|
223
|
+
off = math.ceil(off / core.align(type)) * core.align(type)
|
|
224
|
+
offsets[name] = off
|
|
225
|
+
types[name] = type
|
|
226
|
+
off = off + core.sizeof(type)
|
|
227
|
+
end
|
|
228
|
+
return { names = names, offsets = offsets, types = types, size = off, new = struct_new,
|
|
229
|
+
byval = struct_byval }
|
|
230
|
+
end
|
|
231
|
+
|
|
232
|
+
function _M.byval(buf)
|
|
233
|
+
if buf.size then
|
|
234
|
+
local size = buf.size
|
|
235
|
+
local types = { "char", "short"}
|
|
236
|
+
local vals = {}
|
|
237
|
+
for i = 1, size, 4 do
|
|
238
|
+
if size - i == 0 then
|
|
239
|
+
vals[#vals + 1] = buf:get(i, "char")
|
|
240
|
+
elseif size - i == 1 then
|
|
241
|
+
vals[#vals + 1] = buf:get(i, "short")
|
|
242
|
+
else
|
|
243
|
+
vals[#vals + 1] = buf:get(i, "int")
|
|
244
|
+
end
|
|
245
|
+
end
|
|
246
|
+
return unpack(vals)
|
|
247
|
+
else
|
|
248
|
+
error("this type of buffer can't be passed by value")
|
|
249
|
+
end
|
|
250
|
+
end
|