diff options
| author | Mike Pall <mike> | 2020-10-12 16:18:02 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2020-10-12 16:18:02 +0200 |
| commit | 1d8b747c161db457e032a023ebbff511f5de5ec2 (patch) | |
| tree | 7254328c720b104f5d5b4bd8321cfcb18c6fb6ce /doc | |
| parent | 675e08cf069725a004284b4e1e67fbf0e8fcb4dd (diff) | |
| parent | 050466552bf7eb8b7944aa52c93b45326ae14d7a (diff) | |
| download | luajit-1d8b747c161db457e032a023ebbff511f5de5ec2.tar.gz luajit-1d8b747c161db457e032a023ebbff511f5de5ec2.tar.bz2 luajit-1d8b747c161db457e032a023ebbff511f5de5ec2.zip | |
Merge branch 'master' into v2.1
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/contact.html | 4 | ||||
| -rw-r--r-- | doc/ext_ffi_api.html | 2 | ||||
| -rw-r--r-- | doc/ext_ffi_semantics.html | 4 | ||||
| -rw-r--r-- | doc/ext_ffi_tutorial.html | 4 | ||||
| -rw-r--r-- | doc/extensions.html | 8 | ||||
| -rw-r--r-- | doc/faq.html | 22 | ||||
| -rw-r--r-- | doc/install.html | 8 | ||||
| -rw-r--r-- | doc/luajit.html | 4 | ||||
| -rw-r--r-- | doc/running.html | 2 |
9 files changed, 29 insertions, 29 deletions
diff --git a/doc/contact.html b/doc/contact.html index 3173b2a5..c2f34283 100644 --- a/doc/contact.html +++ b/doc/contact.html | |||
| @@ -57,11 +57,11 @@ | |||
| 57 | <p> | 57 | <p> |
| 58 | If you want to report bugs, propose fixes or suggest enhancements, | 58 | If you want to report bugs, propose fixes or suggest enhancements, |
| 59 | please use the | 59 | please use the |
| 60 | <a href="https://github.com/LuaJIT/LuaJIT/issues">GitHub issue tracker</a>. | 60 | <a href="https://github.com/LuaJIT/LuaJIT/issues"><span class="ext">»</span> GitHub issue tracker</a>. |
| 61 | </p> | 61 | </p> |
| 62 | <p> | 62 | <p> |
| 63 | Please send general questions to the | 63 | Please send general questions to the |
| 64 | <a href="https://luajit.org/list.html">LuaJIT mailing list</a>. | 64 | <a href="https://luajit.org/list.html"><span class="ext">»</span> LuaJIT mailing list</a>. |
| 65 | </p> | 65 | </p> |
| 66 | <p> | 66 | <p> |
| 67 | You can also send any questions you have directly to me: | 67 | You can also send any questions you have directly to me: |
diff --git a/doc/ext_ffi_api.html b/doc/ext_ffi_api.html index 9c815f8b..8b2a605d 100644 --- a/doc/ext_ffi_api.html +++ b/doc/ext_ffi_api.html | |||
| @@ -255,7 +255,7 @@ contents of an <tt>__index</tt> table (if any) may be modified | |||
| 255 | afterwards. The associated metatable automatically applies to all uses | 255 | afterwards. The associated metatable automatically applies to all uses |
| 256 | of this type, no matter how the objects are created or where they | 256 | of this type, no matter how the objects are created or where they |
| 257 | originate from. Note that pre-defined operations on types have | 257 | originate from. Note that pre-defined operations on types have |
| 258 | precedence (e.g. declared field names cannot be overriden). | 258 | precedence (e.g. declared field names cannot be overridden). |
| 259 | </p> | 259 | </p> |
| 260 | <p> | 260 | <p> |
| 261 | All standard Lua metamethods are implemented. These are called directly, | 261 | All standard Lua metamethods are implemented. These are called directly, |
diff --git a/doc/ext_ffi_semantics.html b/doc/ext_ffi_semantics.html index 5415787d..7c4f0d1d 100644 --- a/doc/ext_ffi_semantics.html +++ b/doc/ext_ffi_semantics.html | |||
| @@ -672,7 +672,7 @@ through unions is explicitly detected and allowed. | |||
| 672 | <a href="ext_ffi_api.html#ffi_new">constructor</a>. This is equivalent | 672 | <a href="ext_ffi_api.html#ffi_new">constructor</a>. This is equivalent |
| 673 | to <tt>ffi.new(ct, ...)</tt>, unless a <tt>__new</tt> metamethod is | 673 | to <tt>ffi.new(ct, ...)</tt>, unless a <tt>__new</tt> metamethod is |
| 674 | defined. The <tt>__new</tt> metamethod is called with the ctype object | 674 | defined. The <tt>__new</tt> metamethod is called with the ctype object |
| 675 | plus any other arguments passed to the contructor. Note that you have to | 675 | plus any other arguments passed to the constructor. Note that you have to |
| 676 | use <tt>ffi.new</tt> inside of it, since calling <tt>ct(...)</tt> would | 676 | use <tt>ffi.new</tt> inside of it, since calling <tt>ct(...)</tt> would |
| 677 | cause infinite recursion.</li> | 677 | cause infinite recursion.</li> |
| 678 | 678 | ||
| @@ -858,7 +858,7 @@ place of a type, you'd need to use <tt>ffi.typeof("int")</tt> instead. | |||
| 858 | <p> | 858 | <p> |
| 859 | The main use for parameterized types are libraries implementing abstract | 859 | The main use for parameterized types are libraries implementing abstract |
| 860 | data types | 860 | data types |
| 861 | (<a href="https://www.freelists.org/post/luajit/ffi-type-of-pointer-to,8">example</a>), | 861 | (<a href="https://www.freelists.org/post/luajit/ffi-type-of-pointer-to,8"><span class="ext">»</span> example</a>), |
| 862 | similar to what can be achieved with C++ template metaprogramming. | 862 | similar to what can be achieved with C++ template metaprogramming. |
| 863 | Another use case are derived types of anonymous structs, which avoids | 863 | Another use case are derived types of anonymous structs, which avoids |
| 864 | pollution of the global struct namespace. | 864 | pollution of the global struct namespace. |
diff --git a/doc/ext_ffi_tutorial.html b/doc/ext_ffi_tutorial.html index aab9c234..d06c11f1 100644 --- a/doc/ext_ffi_tutorial.html +++ b/doc/ext_ffi_tutorial.html | |||
| @@ -216,7 +216,7 @@ a fascinating best-selling game is left as an exercise for the reader. | |||
| 216 | <h2 id="zlib">Accessing the zlib Compression Library</h2> | 216 | <h2 id="zlib">Accessing the zlib Compression Library</h2> |
| 217 | <p> | 217 | <p> |
| 218 | The following code shows how to access the <a | 218 | The following code shows how to access the <a |
| 219 | href="https://zlib.net/">zlib</a> compression library from Lua code. | 219 | href="https://zlib.net/"><span class="ext">»</span> zlib</a> compression library from Lua code. |
| 220 | We'll define two convenience wrapper functions that take a string and | 220 | We'll define two convenience wrapper functions that take a string and |
| 221 | compress or uncompress it to another string: | 221 | compress or uncompress it to another string: |
| 222 | </p> | 222 | </p> |
| @@ -299,7 +299,7 @@ comes pre-installed. Since <tt>ffi.load()</tt> automatically adds any | |||
| 299 | missing standard prefixes/suffixes, we can simply load the | 299 | missing standard prefixes/suffixes, we can simply load the |
| 300 | <tt>"z"</tt> library. On Windows it's named <tt>zlib1.dll</tt> and | 300 | <tt>"z"</tt> library. On Windows it's named <tt>zlib1.dll</tt> and |
| 301 | you'll have to download it first from the | 301 | you'll have to download it first from the |
| 302 | <a href="https://zlib.net/">zlib site</a>. The check for | 302 | <a href="https://zlib.net/"><span class="ext">»</span> zlib site</a>. The check for |
| 303 | <tt>ffi.os</tt> makes sure we pass the right name to | 303 | <tt>ffi.os</tt> makes sure we pass the right name to |
| 304 | <tt>ffi.load()</tt>. | 304 | <tt>ffi.load()</tt>. |
| 305 | </p> | 305 | </p> |
diff --git a/doc/extensions.html b/doc/extensions.html index 68193187..5b7bb58f 100644 --- a/doc/extensions.html +++ b/doc/extensions.html | |||
| @@ -73,9 +73,9 @@ td.excinterop { | |||
| 73 | <div id="main"> | 73 | <div id="main"> |
| 74 | <p> | 74 | <p> |
| 75 | LuaJIT is fully upwards-compatible with Lua 5.1. It supports all | 75 | LuaJIT is fully upwards-compatible with Lua 5.1. It supports all |
| 76 | <a href="https://www.lua.org/manual/5.1/manual.html#5">standard Lua | 76 | <a href="https://www.lua.org/manual/5.1/manual.html#5"><span class="ext">»</span> standard Lua |
| 77 | library functions</a> and the full set of | 77 | library functions</a> and the full set of |
| 78 | <a href="https://www.lua.org/manual/5.1/manual.html#3">Lua/C API | 78 | <a href="https://www.lua.org/manual/5.1/manual.html#3"><span class="ext">»</span> Lua/C API |
| 79 | functions</a>. | 79 | functions</a>. |
| 80 | </p> | 80 | </p> |
| 81 | <p> | 81 | <p> |
| @@ -99,7 +99,7 @@ LuaJIT comes with several built-in extension modules: | |||
| 99 | <h3 id="bit"><tt>bit.*</tt> — Bitwise operations</h3> | 99 | <h3 id="bit"><tt>bit.*</tt> — Bitwise operations</h3> |
| 100 | <p> | 100 | <p> |
| 101 | LuaJIT supports all bitwise operations as defined by | 101 | LuaJIT supports all bitwise operations as defined by |
| 102 | <a href="https://bitop.luajit.org">Lua BitOp</a>: | 102 | <a href="https://bitop.luajit.org"><span class="ext">»</span> Lua BitOp</a>: |
| 103 | </p> | 103 | </p> |
| 104 | <pre class="code"> | 104 | <pre class="code"> |
| 105 | bit.tobit bit.tohex bit.bnot bit.band bit.bor bit.bxor | 105 | bit.tobit bit.tohex bit.bnot bit.band bit.bor bit.bxor |
| @@ -108,7 +108,7 @@ bit.lshift bit.rshift bit.arshift bit.rol bit.ror bit.bswap | |||
| 108 | <p> | 108 | <p> |
| 109 | This module is a LuaJIT built-in — you don't need to download or | 109 | This module is a LuaJIT built-in — you don't need to download or |
| 110 | install Lua BitOp. The Lua BitOp site has full documentation for all | 110 | install Lua BitOp. The Lua BitOp site has full documentation for all |
| 111 | <a href="https://bitop.luajit.org/api.html">Lua BitOp API functions</a>. | 111 | <a href="https://bitop.luajit.org/api.html"><span class="ext">»</span> Lua BitOp API functions</a>. |
| 112 | The FFI adds support for | 112 | The FFI adds support for |
| 113 | <a href="ext_ffi_semantics.html#cdata_arith">64 bit bitwise operations</a>, | 113 | <a href="ext_ffi_semantics.html#cdata_arith">64 bit bitwise operations</a>, |
| 114 | using the same API functions. | 114 | using the same API functions. |
diff --git a/doc/faq.html b/doc/faq.html index 5c4ce533..acc47bae 100644 --- a/doc/faq.html +++ b/doc/faq.html | |||
| @@ -61,16 +61,16 @@ dd { margin-left: 1.5em; } | |||
| 61 | <dt>Q: Where can I learn more about LuaJIT and Lua?</dt> | 61 | <dt>Q: Where can I learn more about LuaJIT and Lua?</dt> |
| 62 | <dd> | 62 | <dd> |
| 63 | <ul style="padding: 0;"> | 63 | <ul style="padding: 0;"> |
| 64 | <li>The <a href="https://luajit.org/list.html">LuaJIT mailing list</a> focuses on topics | 64 | <li>The <a href="https://luajit.org/list.html"><span class="ext">»</span> LuaJIT mailing list</a> focuses on topics |
| 65 | related to LuaJIT.</li> | 65 | related to LuaJIT.</li> |
| 66 | <li>The <a href="http://wiki.luajit.org/"><span class="ext">»</span> LuaJIT wiki</a> gathers community | 66 | <li>The <a href="http://wiki.luajit.org/"><span class="ext">»</span> LuaJIT wiki</a> gathers community |
| 67 | resources about LuaJIT.</li> | 67 | resources about LuaJIT.</li> |
| 68 | <li>News about Lua itself can be found at the | 68 | <li>News about Lua itself can be found at the |
| 69 | <a href="https://www.lua.org/lua-l.html">Lua mailing list</a>. | 69 | <a href="https://www.lua.org/lua-l.html"><span class="ext">»</span> Lua mailing list</a>. |
| 70 | The mailing list archives are worth checking out for older postings | 70 | The mailing list archives are worth checking out for older postings |
| 71 | about LuaJIT.</li> | 71 | about LuaJIT.</li> |
| 72 | <li>The <a href="https://lua.org">main Lua.org site</a> has complete | 72 | <li>The <a href="https://lua.org"><span class="ext">»</span> main Lua.org site</a> has complete |
| 73 | <a href="https://www.lua.org/docs.html">documentation</a> of the language | 73 | <a href="https://www.lua.org/docs.html"><span class="ext">»</span> documentation</a> of the language |
| 74 | and links to books and papers about Lua.</li> | 74 | and links to books and papers about Lua.</li> |
| 75 | <li>The community-managed <a href="http://lua-users.org/wiki/"><span class="ext">»</span> Lua Wiki</a> | 75 | <li>The community-managed <a href="http://lua-users.org/wiki/"><span class="ext">»</span> Lua Wiki</a> |
| 76 | has information about diverse topics.</li> | 76 | has information about diverse topics.</li> |
| @@ -83,11 +83,11 @@ has information about diverse topics.</li> | |||
| 83 | I'm planning to write more documentation about the internals of LuaJIT. | 83 | I'm planning to write more documentation about the internals of LuaJIT. |
| 84 | In the meantime, please use the following Google Scholar searches | 84 | In the meantime, please use the following Google Scholar searches |
| 85 | to find relevant papers:<br> | 85 | to find relevant papers:<br> |
| 86 | Search for: <a href="https://scholar.google.com/scholar?q=Trace+Compiler">Trace Compiler</a><br> | 86 | Search for: <a href="https://scholar.google.com/scholar?q=Trace+Compiler"><span class="ext">»</span> Trace Compiler</a><br> |
| 87 | Search for: <a href="https://scholar.google.com/scholar?q=JIT+Compiler">JIT Compiler</a><br> | 87 | Search for: <a href="https://scholar.google.com/scholar?q=JIT+Compiler"><span class="ext">»</span> JIT Compiler</a><br> |
| 88 | Search for: <a href="https://scholar.google.com/scholar?q=Dynamic+Language+Optimizations">Dynamic Language Optimizations</a><br> | 88 | Search for: <a href="https://scholar.google.com/scholar?q=Dynamic+Language+Optimizations"><span class="ext">»</span> Dynamic Language Optimizations</a><br> |
| 89 | Search for: <a href="https://scholar.google.com/scholar?q=SSA+Form">SSA Form</a><br> | 89 | Search for: <a href="https://scholar.google.com/scholar?q=SSA+Form"><span class="ext">»</span> SSA Form</a><br> |
| 90 | Search for: <a href="https://scholar.google.com/scholar?q=Linear+Scan+Register+Allocation">Linear Scan Register Allocation</a><br> | 90 | Search for: <a href="https://scholar.google.com/scholar?q=Linear+Scan+Register+Allocation"><span class="ext">»</span> Linear Scan Register Allocation</a><br> |
| 91 | Here is a list of the <a href="http://lua-users.org/lists/lua-l/2009-11/msg00089.html"><span class="ext">»</span> innovative features in LuaJIT</a>.<br> | 91 | Here is a list of the <a href="http://lua-users.org/lists/lua-l/2009-11/msg00089.html"><span class="ext">»</span> innovative features in LuaJIT</a>.<br> |
| 92 | And, you know, reading the source is of course the only way to enlightenment. :-) | 92 | And, you know, reading the source is of course the only way to enlightenment. :-) |
| 93 | </dd> | 93 | </dd> |
| @@ -99,7 +99,7 @@ Q: My vararg functions fail after switching to LuaJIT!</dt> | |||
| 99 | <dd>LuaJIT is compatible to the Lua 5.1 language standard. It doesn't | 99 | <dd>LuaJIT is compatible to the Lua 5.1 language standard. It doesn't |
| 100 | support the implicit <tt>arg</tt> parameter for old-style vararg | 100 | support the implicit <tt>arg</tt> parameter for old-style vararg |
| 101 | functions from Lua 5.0.<br>Please convert your code to the | 101 | functions from Lua 5.0.<br>Please convert your code to the |
| 102 | <a href="https://www.lua.org/manual/5.1/manual.html#2.5.9">Lua 5.1 | 102 | <a href="https://www.lua.org/manual/5.1/manual.html#2.5.9"><span class="ext">»</span> Lua 5.1 |
| 103 | vararg syntax</a>.</dd> | 103 | vararg syntax</a>.</dd> |
| 104 | </dl> | 104 | </dl> |
| 105 | 105 | ||
| @@ -156,7 +156,7 @@ don't report a bug about it. Check the <tt>mode</tt> parameter for the | |||
| 156 | In general, the only promising approach is to sandbox Lua code at the | 156 | In general, the only promising approach is to sandbox Lua code at the |
| 157 | process level and not the VM level.<br> | 157 | process level and not the VM level.<br> |
| 158 | 158 | ||
| 159 | More reading material at the <a href="http://lua-users.org/wiki/SandBoxes"><span class="ext">»</span> Lua Wiki</a> and <a href="https://en.wikipedia.org/wiki/Sandbox_(computer_security)">Wikipedia</a>. | 159 | More reading material at the <a href="http://lua-users.org/wiki/SandBoxes"><span class="ext">»</span> Lua Wiki</a> and <a href="https://en.wikipedia.org/wiki/Sandbox_(computer_security)"><span class="ext">»</span> Wikipedia</a>. |
| 160 | </dd> | 160 | </dd> |
| 161 | </dl> | 161 | </dl> |
| 162 | 162 | ||
diff --git a/doc/install.html b/doc/install.html index bc96b661..451fdd41 100644 --- a/doc/install.html +++ b/doc/install.html | |||
| @@ -245,7 +245,7 @@ Obviously the prefixes given during build and installation need to be the same. | |||
| 245 | <p> | 245 | <p> |
| 246 | Either install one of the open source SDKs | 246 | Either install one of the open source SDKs |
| 247 | (<a href="http://mingw.org/"><span class="ext">»</span> MinGW</a> or | 247 | (<a href="http://mingw.org/"><span class="ext">»</span> MinGW</a> or |
| 248 | <a href="https://www.cygwin.com/">Cygwin</a>), which come with a modified | 248 | <a href="https://www.cygwin.com/"><span class="ext">»</span> Cygwin</a>), which come with a modified |
| 249 | GCC plus the required development headers. | 249 | GCC plus the required development headers. |
| 250 | Or install Microsoft's Visual Studio (MSVC). | 250 | Or install Microsoft's Visual Studio (MSVC). |
| 251 | </p> | 251 | </p> |
| @@ -388,7 +388,7 @@ make CROSS=mips-linux- TARGET_CFLAGS="-mips64r2 -mabi=64" | |||
| 388 | make CROSS=mipsel-linux- TARGET_CFLAGS="-mips64r2 -mabi=64" | 388 | make CROSS=mipsel-linux- TARGET_CFLAGS="-mips64r2 -mabi=64" |
| 389 | </pre> | 389 | </pre> |
| 390 | <p> | 390 | <p> |
| 391 | You can cross-compile for <b id="android">Android</b> using the <a href="https://developer.android.com/ndk/">Android NDK</a>. | 391 | You can cross-compile for <b id="android">Android</b> using the <a href="https://developer.android.com/ndk/"><span class="ext">»</span> Android NDK</a>. |
| 392 | Please adapt the environment variables to match the install locations and the | 392 | Please adapt the environment variables to match the install locations and the |
| 393 | desired target platform. E.g. Android 4.1 corresponds to ABI level 16. | 393 | desired target platform. E.g. Android 4.1 corresponds to ABI level 16. |
| 394 | </p> | 394 | </p> |
| @@ -412,7 +412,7 @@ make HOST_CC="gcc -m32" CROSS=$NDKCROSS \ | |||
| 412 | TARGET_LD=$NDKCC | 412 | TARGET_LD=$NDKCC |
| 413 | </pre> | 413 | </pre> |
| 414 | <p> | 414 | <p> |
| 415 | You can cross-compile for <b id="ios">iOS 3.0+</b> (iPhone/iPad) using the <a href="https://developer.apple.com/ios/">iOS SDK</a>: | 415 | You can cross-compile for <b id="ios">iOS 3.0+</b> (iPhone/iPad) using the <a href="https://developer.apple.com/ios/"><span class="ext">»</span> iOS SDK</a>: |
| 416 | </p> | 416 | </p> |
| 417 | <p style="font-size: 8pt;"> | 417 | <p style="font-size: 8pt;"> |
| 418 | Note: <b>the JIT compiler is disabled for iOS</b>, because regular iOS Apps | 418 | Note: <b>the JIT compiler is disabled for iOS</b>, because regular iOS Apps |
| @@ -547,7 +547,7 @@ Make sure the <tt>jit</tt> library is loaded or the JIT compiler | |||
| 547 | will not be activated.</li> | 547 | will not be activated.</li> |
| 548 | <li>The <tt>bit.*</tt> module for bitwise operations | 548 | <li>The <tt>bit.*</tt> module for bitwise operations |
| 549 | is already built-in. There's no need to statically link | 549 | is already built-in. There's no need to statically link |
| 550 | <a href="https://bitop.luajit.org/">Lua BitOp</a> to your application.</li> | 550 | <a href="https://bitop.luajit.org/"><span class="ext">»</span> Lua BitOp</a> to your application.</li> |
| 551 | </ul> | 551 | </ul> |
| 552 | 552 | ||
| 553 | <h2 id="distro">Hints for Distribution Maintainers</h2> | 553 | <h2 id="distro">Hints for Distribution Maintainers</h2> |
diff --git a/doc/luajit.html b/doc/luajit.html index 3ce81c3e..ab768053 100644 --- a/doc/luajit.html +++ b/doc/luajit.html | |||
| @@ -141,13 +141,13 @@ table.feature small { | |||
| 141 | <div id="main"> | 141 | <div id="main"> |
| 142 | <p> | 142 | <p> |
| 143 | LuaJIT is a <b>Just-In-Time Compiler</b> (JIT) for the | 143 | LuaJIT is a <b>Just-In-Time Compiler</b> (JIT) for the |
| 144 | <a href="https://www.lua.org/">Lua</a> programming language. | 144 | <a href="https://www.lua.org/"><span class="ext">»</span> Lua</a> programming language. |
| 145 | Lua is a powerful, dynamic and light-weight programming language. | 145 | Lua is a powerful, dynamic and light-weight programming language. |
| 146 | It may be embedded or used as a general-purpose, stand-alone language. | 146 | It may be embedded or used as a general-purpose, stand-alone language. |
| 147 | </p> | 147 | </p> |
| 148 | <p> | 148 | <p> |
| 149 | LuaJIT is Copyright © 2005-2020 Mike Pall, released under the | 149 | LuaJIT is Copyright © 2005-2020 Mike Pall, released under the |
| 150 | <a href="https://www.opensource.org/licenses/mit-license.php">MIT open source license</a>. | 150 | <a href="https://www.opensource.org/licenses/mit-license.php"><span class="ext">»</span> MIT open source license</a>. |
| 151 | </p> | 151 | </p> |
| 152 | <p> | 152 | <p> |
| 153 | </p> | 153 | </p> |
diff --git a/doc/running.html b/doc/running.html index 2cba1534..f34f1f5f 100644 --- a/doc/running.html +++ b/doc/running.html | |||
| @@ -89,7 +89,7 @@ The <tt>luajit</tt> stand-alone executable is just a slightly modified | |||
| 89 | version of the regular <tt>lua</tt> stand-alone executable. | 89 | version of the regular <tt>lua</tt> stand-alone executable. |
| 90 | It supports the same basic options, too. <tt>luajit -h</tt> | 90 | It supports the same basic options, too. <tt>luajit -h</tt> |
| 91 | prints a short list of the available options. Please have a look at the | 91 | prints a short list of the available options. Please have a look at the |
| 92 | <a href="https://www.lua.org/manual/5.1/manual.html#6">Lua manual</a> | 92 | <a href="https://www.lua.org/manual/5.1/manual.html#6"><span class="ext">»</span> Lua manual</a> |
| 93 | for details. | 93 | for details. |
| 94 | </p> | 94 | </p> |
| 95 | <p> | 95 | <p> |
