summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2025-12-23 03:51:10 +0200
committerAndrey Lihatskiy <alihatskiy@productengine.com>2025-12-23 03:51:10 +0200
commit0c8794ef0f7985c9204551d2c6ed315ffa6ee505 (patch)
tree7e47391ce667b82835e796f7691d91bb7d758ba8 /indra
parent590f58dbad3dc3db3482dba86bf2619a87a7dad5 (diff)
parent9f9df3e55e4994cc2942a8e19c267b793e61cfb1 (diff)
Merge branch 'project/lua_editor' into marchcat/slua-linux
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/app_settings/types_lua_default.xml6656
1 files changed, 5002 insertions, 1654 deletions
diff --git a/indra/newview/app_settings/types_lua_default.xml b/indra/newview/app_settings/types_lua_default.xml
index 6b90804ab3..2a004147ba 100644
--- a/indra/newview/app_settings/types_lua_default.xml
+++ b/indra/newview/app_settings/types_lua_default.xml
@@ -1,1914 +1,5262 @@
<?xml version="1.0" encoding="UTF-8"?>
<llsd>
- <map>
- <key>version</key>
- <string>1.0.0</string>
- <key>typeAliases</key>
- <array>
+<map>
+ <key>version</key>
+ <string>1.0.0</string>
+ <key>typeAliases</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>rotation</string>
+ <key>definition</key>
<map>
+ <key>kind</key>
+ <string>reference</string>
<key>name</key>
- <string>numeric</string>
- <key>definition</key>
- <map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>boolean</string>
- <string>number</string>
- </array>
- </map>
+ <string>quaternion</string>
</map>
+ <key>comment</key>
+ <string>'rotation' is an alias for 'quaternion'</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>numeric</string>
+ <key>definition</key>
<map>
- <key>name</key>
- <string>uuid_like</string>
- <key>definition</key>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
+ <array>
+ <string>boolean</string>
+ <string>number</string>
+ </array>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
<map>
<key>kind</key>
<string>union</string>
<key>types</key>
<array>
<string>string</string>
+ <string>number</string>
+ <string>vector</string>
<string>uuid</string>
+ <string>quaternion</string>
+ <string>boolean</string>
</array>
</map>
</map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLDetectedEventName</string>
+ <key>definition</key>
<map>
- <key>name</key>
- <string>list</string>
- <key>definition</key>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
+ <key>kind</key>
+ <string>literal-union</string>
+ <key>values</key>
+ <array/>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLNonDetectedEventName</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>literal-union</string>
+ <key>values</key>
+ <array/>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLEventName</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
+ <array>
+ <string>LLDetectedEventName</string>
+ <string>LLNonDetectedEventName</string>
+ </array>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLEventHandler</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
<map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>string</string>
- <string>number</string>
- <string>vector</string>
- <string>uuid</string>
- <string>quaternion</string>
- <string>boolean</string>
- </array>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
</map>
- </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
</map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLDetectedEventHandler</string>
+ <key>definition</key>
<map>
- <key>name</key>
- <string>lljson_constant</string>
- <key>definition</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>detected</string>
+ <key>type</key>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string>LLDetectedEvent</string>
+ </map>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLTimerEveryCallback</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>scheduled</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>interval</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ </map>
+ <key>comment</key>
+ <string>Callback type for LLTimers.every() - receives scheduled time and interval</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLTimerOnceCallback</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>scheduled</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ </map>
+ <key>comment</key>
+ <string>Callback type for LLTimers.once() - receives scheduled time</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLTimerCallback</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
+ <array>
+ <string>LLTimerEveryCallback</string>
+ <string>LLTimerOnceCallback</string>
+ <string>(...any) -&gt; ...any</string>
+ </array>
+ </map>
+ <key>comment</key>
+ <string>Union of timer callback types</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>OsDateTime</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>table</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>year</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>month</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>day</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>hour</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>min</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sec</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>wday</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>yday</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isdst</string>
+ <key>type</key>
+ <string>boolean</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ </map>
+ <key>comment</key>
+ <string>Date/time table structure used by os.date and os.time</string>
+ </map>
+ </array>
+ <key>classes</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>quaternion</string>
+ <key>comment</key>
+ <string>Luau Type Definition for LSL UserData Type: quaternion</string>
+ <key>properties</key>
+ <array>
<map>
- <key>kind</key>
- <string>reference</string>
<key>name</key>
+ <string>x</string>
+ <key>type</key>
<string>number</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>DetectedEventName</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>literal-union</string>
- <key>values</key>
- <array />
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>NonDetectedEventName</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>literal-union</string>
- <key>values</key>
- <array />
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>EventName</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>methods</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>__add</string>
+ <key>parameters</key>
<array>
- <string>DetectedEventName</string>
- <string>NonDetectedEventName</string>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
+ <key>type</key>
+ <string>quaternion</string>
+ </map>
</array>
+ <key>returnType</key>
+ <string>quaternion</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>EventHandler</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>function</string>
+ <key>name</key>
+ <string>__sub</string>
<key>parameters</key>
<array>
<map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
<key>type</key>
- <string>any</string>
- <key>variadic</key>
- <boolean>true</boolean>
+ <string>quaternion</string>
</map>
</array>
<key>returnType</key>
- <string>()</string>
+ <string>quaternion</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>DetectedEventHandler</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>function</string>
+ <key>name</key>
+ <string>__mul</string>
<key>parameters</key>
<array>
<map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
<key>type</key>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string>DetectedEvent</string>
- </map>
+ <string>quaternion</string>
</map>
</array>
<key>returnType</key>
- <string>()</string>
+ <string>quaternion</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>LLEventsProto</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>table</string>
- <key>methods</key>
+ <key>name</key>
+ <string>__div</string>
+ <key>parameters</key>
<array>
<map>
<key>name</key>
- <string>eventNames</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- </array>
- <key>returnType</key>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string>string</string>
- </map>
+ <string>self</string>
</map>
<map>
<key>name</key>
- <string>listeners</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>EventName</string>
- </map>
- </array>
- <key>returnType</key>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string>EventHandler</string>
- </map>
+ <string>other</string>
+ <key>type</key>
+ <string>quaternion</string>
</map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__unm</string>
+ <key>parameters</key>
+ <array>
<map>
<key>name</key>
- <string>on</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>DetectedEventName</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>DetectedEventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
- <key>overloads</key>
- <array>
- <map>
- <key>name</key>
- <string>on</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>NonDetectedEventName</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>EventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
- </map>
- </array>
+ <string>self</string>
</map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__eq</string>
+ <key>parameters</key>
+ <array>
<map>
<key>name</key>
- <string>once</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>DetectedEventName</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>DetectedEventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
- <key>overloads</key>
- <array>
- <map>
- <key>name</key>
- <string>once</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>NonDetectedEventName</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>EventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
- </map>
- </array>
+ <string>self</string>
</map>
<map>
<key>name</key>
- <string>off</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>eventName</string>
- <key>type</key>
- <string>EventName</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>EventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>boolean</string>
+ <string>other</string>
+ <key>type</key>
+ <string>quaternion</string>
</map>
</array>
+ <key>returnType</key>
+ <string>boolean</string>
</map>
- </map>
- <map>
- <key>name</key>
- <string>LLTimersProto</string>
- <key>definition</key>
<map>
- <key>kind</key>
- <string>table</string>
- <key>methods</key>
+ <key>name</key>
+ <string>__tostring</string>
+ <key>parameters</key>
<array>
<map>
<key>name</key>
- <string>every</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>seconds</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <map>
- <key>kind</key>
- <string>function</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>any</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>()</string>
- </map>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
+ <string>self</string>
</map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>uuid</string>
+ <key>comment</key>
+ <string>Luau Type Definition for LSL UserData Type: uuid</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>istruthy</string>
+ <key>type</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if the UUID is not the null UUID (all zeros)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bytes</string>
+ <key>type</key>
+ <string>string?</string>
+ <key>comment</key>
+ <string>Returns the raw 16-byte binary string of the UUID, or nil if the UUID is not in a compressed state</string>
+ </map>
+ </array>
+ <key>methods</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>__tostring</string>
+ <key>parameters</key>
+ <array>
<map>
<key>name</key>
- <string>once</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>seconds</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <map>
- <key>kind</key>
- <string>function</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>any</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>()</string>
- </map>
- </map>
- </array>
- <key>returnType</key>
- <string>EventHandler</string>
+ <string>self</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>Luau Type Definition for LSL UserData Type: vector</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>methods</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>__add</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
</map>
<map>
<key>name</key>
- <string>off</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</key>
- <string>EventHandler</string>
- </map>
- </array>
- <key>returnType</key>
- <string>boolean</string>
+ <string>other</string>
+ <key>type</key>
+ <string>vector</string>
</map>
</array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>Native component-wise addition</string>
</map>
- </map>
- </array>
- <key>classes</key>
- <array>
- <map>
- <key>name</key>
- <string>uuid</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>istruthy</string>
- <key>type</key>
- <string>boolean</string>
- <key>comment</key>
- <string>property to check if uuid is valid</string>
- </map>
- </array>
- <key>methods</key>
- <array>
- <map>
- <key>name</key>
- <string>__tostring</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>comment</key>
- <string>converts uuid to a string</string>
- </map>
- </array>
- </map>
+ <map>
+ <key>name</key>
+ <string>__sub</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>Native component-wise subtraction</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__unm</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>Unary negation</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__mul</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
+ <key>type</key>
+ <string>vector | quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number | vector</string>
+ <key>comment</key>
+ <string>LSL-style multiplication: vector * vector -&gt; number (Dot Product), vector * quaternion -&gt; vector (Rotation)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__div</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
+ <key>type</key>
+ <string>number | quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>LSL-style division: vector / number -&gt; vector (Scale), vector / quaternion -&gt; vector (Rotation by inverse)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__mod</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>other</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>LSL-style modulo: vector % vector -&gt; vector (Cross Product)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>__tostring</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLDetectedEvent</string>
+ <key>comment</key>
+ <string>Event detection class providing access to detected object/avatar information</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>index</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>valid</string>
+ <key>type</key>
+ <string>boolean</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>canAdjustDamage</string>
+ <key>type</key>
+ <string>boolean</string>
+ </map>
+ </array>
+ <key>methods</key>
+ <array/>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLEvents</string>
+ <key>comment</key>
+ <string>Event registration and management class for Second Life events</string>
+ <key>methods</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>on</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>event</string>
+ <key>type</key>
+ <string>LLEventName</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLEventHandler</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>LLEventHandler</string>
+ <key>comment</key>
+ <string>Registers a callback for an event. Returns the callback.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>off</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>event</string>
+ <key>type</key>
+ <string>LLEventName</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLEventHandler</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Unregisters a callback. Returns true if found and removed.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>once</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>event</string>
+ <key>type</key>
+ <string>LLEventName</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLEventHandler</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>LLEventHandler</string>
+ <key>comment</key>
+ <string>Registers a one-time callback. Returns the wrapper function.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>listeners</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>event</string>
+ <key>type</key>
+ <string>LLEventName</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{LLEventHandler}</string>
+ <key>comment</key>
+ <string>Returns a list of all listeners for a specific event.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>eventNames</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{string}</string>
+ <key>comment</key>
+ <string>Returns a list of all event names that have listeners.</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLTimers</string>
+ <key>comment</key>
+ <string>Timer management class for scheduling periodic and one-time callbacks</string>
+ <key>methods</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>every</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>seconds</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLTimerEveryCallback</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>LLTimerCallback</string>
+ <key>comment</key>
+ <string>Registers a callback to be called every N seconds. Returns the callback.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>once</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>seconds</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLTimerOnceCallback</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>LLTimerCallback</string>
+ <key>comment</key>
+ <string>Registers a callback to be called once after N seconds. Returns the callback.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>off</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>self</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>callback</string>
+ <key>type</key>
+ <string>LLTimerCallback</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Unregisters a timer callback. Returns true if found and removed.</string>
+ </map>
+ </array>
+ </map>
+ </array>
+ <key>globalVariables</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>quaternion</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>quaternion</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>x property of quaternion</string>
- </map>
- <map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>y property of quaternion</string>
- </map>
- <map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>z property of quaternion</string>
- </map>
- <map>
- <key>name</key>
- <string>s</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>s property of quaternion</string>
- </map>
- </array>
- <key>methods</key>
- <array>
- <map>
- <key>name</key>
- <string>__mul</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>multiply vector/quaternion by quaternion</string>
- <key>overloads</key>
- <array>
+ <key>kind</key>
+ <string>callable-table</string>
+ <key>tableType</key>
+ <map>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__mul</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
</map>
<map>
<key>name</key>
- <string>other</string>
+ <string>y</string>
<key>type</key>
- <string>quaternion</string>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>number</string>
</map>
</array>
<key>returnType</key>
<string>quaternion</string>
- <key>comment</key>
- <string>multiply vector/quaternion by quaternion</string>
- </map>
- </array>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>vector</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>x property of vector</string>
- </map>
- <map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>y property of vector</string>
- </map>
- <map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
- <string>number</string>
- <key>comment</key>
- <string>z property of vector</string>
- </map>
- </array>
- <key>methods</key>
- <array>
- <map>
- <key>name</key>
- <string>__mul</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
</map>
+ <key>comment</key>
+ <string>Constructor</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>identity</string>
+ <key>type</key>
+ <string>quaternion</string>
+ <key>comment</key>
+ <string>Identity quaternion constant</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>normalize</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>multiply vector by number, vector, or quaternion</string>
- <key>overloads</key>
- <array>
- <map>
- <key>name</key>
- <string>__mul</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
+ <string>q</string>
<key>type</key>
<string>quaternion</string>
</map>
</array>
<key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>multiply vector by number, vector, or quaternion</string>
+ <string>quaternion</string>
</map>
+ <key>comment</key>
+ <string>Returns normalized quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>magnitude</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__mul</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
+ <string>q</string>
<key>type</key>
- <string>number</string>
+ <string>quaternion</string>
</map>
</array>
<key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>multiply vector by number, vector, or quaternion</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>__div</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
+ <string>number</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>divide vector by number, vector, or quaternion</string>
- <key>overloads</key>
- <array>
+ <key>comment</key>
+ <string>Returns magnitude of quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>dot</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__div</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
+ <string>a</string>
+ <key>type</key>
+ <string>quaternion</string>
</map>
<map>
<key>name</key>
- <string>other</string>
+ <string>b</string>
<key>type</key>
<string>quaternion</string>
</map>
</array>
<key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>divide vector by number, vector, or quaternion</string>
+ <string>number</string>
</map>
+ <key>comment</key>
+ <string>Dot product of two quaternions</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>slerp</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__div</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
+ <string>a</string>
+ <key>type</key>
+ <string>quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>quaternion</string>
</map>
<map>
<key>name</key>
- <string>other</string>
+ <string>t</string>
<key>type</key>
<string>number</string>
</map>
</array>
<key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>divide vector by number, vector, or quaternion</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>__idiv</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
+ <string>quaternion</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>floor divide vector by number, vector, or quaternion</string>
- <key>overloads</key>
- <array>
+ <key>comment</key>
+ <string>Spherical linear interpolation</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>conjugate</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__idiv</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
+ <string>q</string>
+ <key>type</key>
+ <string>quaternion</string>
</map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion</string>
+ </map>
+ <key>comment</key>
+ <string>Returns conjugate of quaternion</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tofwd</string>
+ <key>type</key>
+ <map>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
<map>
<key>name</key>
- <string>other</string>
+ <string>q</string>
<key>type</key>
<string>quaternion</string>
</map>
</array>
<key>returnType</key>
<string>vector</string>
- <key>comment</key>
- <string>floor divide vector by number, vector, or quaternion</string>
</map>
+ <key>comment</key>
+ <string>Returns forward vector from quaternion rotation</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>toleft</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>__idiv</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
+ <string>q</string>
<key>type</key>
- <string>number</string>
+ <string>quaternion</string>
</map>
</array>
<key>returnType</key>
<string>vector</string>
- <key>comment</key>
- <string>floor divide vector by number, vector, or quaternion</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>__add</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>add two vectors</string>
- </map>
- <map>
- <key>name</key>
- <string>__sub</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
</map>
+ <key>comment</key>
+ <string>Returns left vector from quaternion rotation</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>toup</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>q</string>
+ <key>type</key>
+ <string>quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>subtract vector from vector</string>
- </map>
- <map>
- <key>name</key>
- <string>__unm</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>negate a vector</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>DetectedEvent</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>valid</string>
- <key>type</key>
- <string>boolean</string>
- </map>
- <map>
- <key>name</key>
- <string>index</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>can_change_damage</string>
- <key>type</key>
- <string>boolean</string>
- </map>
- </array>
- <key>methods</key>
- <array />
- </map>
- </array>
- <key>globalVariables</key>
- <array>
- <map>
- <key>name</key>
- <string>LLEvents</string>
- <key>type</key>
- <string>LLEventsProto</string>
- <key>comment</key>
- <string>LLEvents object</string>
- </map>
- <map>
- <key>name</key>
- <string>LLTimers</string>
- <key>type</key>
- <string>LLTimersProto</string>
- <key>comment</key>
- <string>LLTimers object</string>
- </map>
- </array>
- <key>globalFunctions</key>
- <array>
- <map>
- <key>name</key>
- <string>uuid</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>str</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>uuid</string>
- <key>comment</key>
- <string>Creates a uuid from a string argument</string>
- </map>
- <map>
- <key>name</key>
- <string>toquaternion</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>str</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>quaternion</string>
- <string>nil</string>
+ <key>comment</key>
+ <string>Returns up vector from quaternion rotation</string>
+ </map>
</array>
</map>
- <key>comment</key>
- <string>Creates a quaternion from a string argument in format `&lt;1,1,1,1&gt;` Invalid strings will return `nil` #### Caveat Due to an old error from lsl strings that match upto the closing `&gt;` are interpreted as valid So `&lt;1,1,1,1` and `&lt;1,1,1,1spoon` are both cast to `&lt;1,1,1,1&gt;` When testing if a string is a quaternion or a vector, you should test with `toquaternion` first.</string>
- </map>
- <map>
- <key>name</key>
- <string>tovector</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>str</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
+ <key>callSignature</key>
<map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
+ <key>parameters</key>
<array>
- <string>vector</string>
- <string>nil</string>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
</array>
+ <key>returnType</key>
+ <string>quaternion</string>
</map>
- <key>comment</key>
- <string>Creates a vector from a string argument in format `&lt;1,1,1&gt;` Invalid strings will return `nil` #### Caveat Due to an old error from lsl strings that match upto the closing `&gt;` are interpreted as valid So `&lt;1,1,1`, `&lt;1,1,1,1` and `&lt;1,1,1spoon` are all cast to `&lt;1,1,1&gt;` When testing if a string is a quaternion or a vector, you should test with `toquaternion` first.</string>
- </map>
- <map>
- <key>name</key>
- <string>vector</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Creates a vector from x,y,z</string>
</map>
+ <key>comment</key>
+ <string>Global 'quaternion' library table with callable metatable</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>rotation</string>
+ <key>type</key>
<map>
- <key>name</key>
+ <key>kind</key>
+ <string>typeof</string>
+ <key>target</key>
<string>quaternion</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>s</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>quaternion</string>
- <key>comment</key>
- <string>Creates a quaternion from x,y,z,s</string>
</map>
- </array>
- <key>modules</key>
- <array>
+ <key>comment</key>
+ <string>'rotation' global is an alias to the 'quaternion' library</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>uuid</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>bit32</string>
- <key>functions</key>
- <array>
- <map>
- <key>name</key>
- <string>arshift</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Shifts `n` by `i` bits to the right (if `i` is negative, a left shift is performed instead). The most significant bit of `n` is propagated during the shift. When `i` is larger than `31`, returns an integer with all bits set to the sign bit of `n`. When `i` is smaller than `-31`, `0` is returned</string>
- </map>
- <map>
- <key>name</key>
- <string>band</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>number</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Performs a bitwise and of all input numbers and returns the result. If the function is called with no arguments, an integer with all bits set to `1` is returned.</string>
- </map>
- <map>
- <key>name</key>
- <string>bnot</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Returns a bitwise negation of the input number.</string>
- </map>
- <map>
- <key>name</key>
- <string>bor</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>number</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Performs a bitwise or of all input numbers and returns the result. If the function is called with no arguments, `0` is returned.</string>
- </map>
- <map>
- <key>name</key>
- <string>btest</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>number</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>boolean</string>
- <key>comment</key>
- <string>Perform a bitwise and of all input numbers, and return `true` if the result is not `0`. If the function is called with no arguments, `true` is returned.</string>
- </map>
- <map>
- <key>name</key>
- <string>bxor</string>
- <key>parameters</key>
- <array>
- <map>
- <key>type</key>
- <string>number</string>
- <key>variadic</key>
- <boolean>true</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Performs a bitwise xor (exclusive or) of all input numbers and returns the result. If the function is called with no arguments, `0` is returned.</string>
- </map>
- <map>
- <key>name</key>
- <string>byteswap</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Returns n with the order of the bytes swapped.</string>
- </map>
- <map>
- <key>name</key>
- <string>countlz</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Returns the number of consecutive zero bits in the 32-bit representation of `n` starting from the left-most (most significant) bit. Returns `32` if `n` is `0`.</string>
- </map>
- <map>
- <key>name</key>
- <string>countrz</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Returns the number of consecutive zero bits in the 32-bit representation of `n` starting from the right-most (least significant) bit. Returns `32` if `n` is `0`.</string>
- </map>
- <map>
- <key>name</key>
- <string>extract</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Extracts bits of `n` at position `f` with `a` width of `w`, and returns the resulting integer. `w` defaults to 1, so a two-argument version of extract returns the bit value at position `f`. Bits are indexed starting at `0`. Errors if `f` and `f+w-1` are not between `0` and `31`.</string>
- </map>
- <map>
- <key>name</key>
- <string>lrotate</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Rotates `n` to the left by `i` bits (if `i` is negative, a right rotate is performed instead) The bits that are shifted past the bit width are shifted back from the right.</string>
- </map>
- <map>
- <key>name</key>
- <string>lshift</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Shifts `n` to the left by `i` bits (if `i` is negative, a right shift is performed instead). When `i` is outside of `[-31..31]` range, returns `0`.</string>
- </map>
- <map>
- <key>name</key>
- <string>replace</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>r</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>number?</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Replaces bits of `n` at position `f` and width `w` with `r`, and returns the resulting integer. `w` defaults to `1`, so a three-argument version of replace changes one bit at position `f` to `r` (which should be `0` or `1`) and returns the result. Bits are indexed starting at `0`. Errors if `f` and `f+w-1` are not between `0` and `31`.</string>
- </map>
- <map>
- <key>name</key>
- <string>lrotate</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Rotates `n` to the left by `i` bits (if `i` is negative, a right rotate is performed instead) The bits that are shifted past the bit width are shifted back from the right.</string>
- </map>
- <map>
- <key>name</key>
- <string>rrotate</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Rotates `n` to the right by `i` bits (if `i` is negative, a left rotate is performed instead) The bits that are shifted past the bit width are shifted back from the left.</string>
- </map>
- <map>
- <key>name</key>
- <string>rshift</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
+ <key>kind</key>
+ <string>callable-table</string>
+ <key>tableType</key>
+ <map>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>number</string>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <map>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
+ <array>
+ <string>string</string>
+ <string>buffer</string>
+ <string>uuid</string>
+ </array>
+ </map>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>uuid?</string>
</map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Shifts `n` to the right by `i` bits (if `i` is negative, a left shift is performed instead). When `i` is outside of `[-31..31]` range, returns `0`.</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>lljson</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>_NAME</string>
- <key>type</key>
- <string>"lljson"</string>
- <key>comment</key>
- <string>Name of the lljson table</string>
- </map>
- <map>
- <key>name</key>
- <string>_VERSION</string>
- <key>type</key>
- <string>string</string>
- <key>comment</key>
- <string>Version of the lljson library (based on the lua-cjson library)</string>
- </map>
- <map>
- <key>name</key>
- <string>array_mt</string>
- <key>type</key>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string></string>
+ <key>comment</key>
+ <string>Creates a new uuid from a string, buffer, or existing uuid</string>
</map>
- <key>comment</key>
- <string>Metatable for declaring table as an array for json encode</string>
- </map>
- <map>
- <key>name</key>
- <string>array_mt</string>
- <key>type</key>
+ </array>
+ </map>
+ <key>callSignature</key>
+ <map>
+ <key>parameters</key>
+ <array>
<map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string></string>
- </map>
- <key>comment</key>
- <string>Metatable for declaring table as an empty array for json encode</string>
- </map>
- <map>
- <key>name</key>
- <string>empty_array</string>
- <key>type</key>
- <string>lljson_constant</string>
- <key>comment</key>
- <string>A constant to pass for an empty array to json encode</string>
- </map>
- <map>
- <key>name</key>
- <string>null</string>
- <key>type</key>
- <string>lljson_constant</string>
- <key>comment</key>
- <string>A constant to pass for null to json encode</string>
- </map>
- </array>
- <key>functions</key>
- <array>
- <map>
- <key>name</key>
- <string>decode</string>
- <key>parameters</key>
- <array>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>json</string>
- <key>type</key>
- <string>string</string>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
+ <array>
+ <string>string</string>
+ <string>buffer</string>
+ <string>uuid</string>
+ </array>
</map>
- </array>
- <key>returnType</key>
- <map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>string</string>
- <string>number</string>
- <string>vector</string>
- <string>uuid</string>
- <string>quaternion</string>
- <string>boolean</string>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string></string>
- </map>
- <string>nil</string>
- </array>
</map>
- <key>comment</key>
- <string>decode json string to lua value</string>
- </map>
- <map>
- <key>name</key>
- <string>encode</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>value</string>
- <key>type</key>
- <map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>string</string>
- <string>number</string>
- <string>vector</string>
- <string>uuid</string>
- <string>quaternion</string>
- <string>boolean</string>
- <map>
- <key>kind</key>
- <string>array</string>
- <key>elementType</key>
- <string></string>
- </map>
- <string>nil</string>
- </array>
- </map>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>comment</key>
- <string>encode lua value as json</string>
- </map>
- </array>
+ </array>
+ <key>returnType</key>
+ <string>uuid?</string>
+ </map>
</map>
+ <key>comment</key>
+ <string>Global 'uuid' library table</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>vector</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>llbase64</string>
- <key>functions</key>
- <array>
- <map>
- <key>name</key>
- <string>decode</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>base64</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>comment</key>
- <string>decode a base64 string, to a buffer or string</string>
- <key>overloads</key>
- <array>
+ <key>kind</key>
+ <string>callable-table</string>
+ <key>tableType</key>
+ <map>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>decode</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>base64</string>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
<key>type</key>
- <string>string</string>
+ <string>number</string>
</map>
<map>
<key>name</key>
- <string>asBuffer</string>
+ <string>z</string>
<key>type</key>
- <string>true</string>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
</map>
</array>
<key>returnType</key>
- <string>buffer</string>
+ <string>vector</string>
</map>
+ <key>comment</key>
+ <string>Creates a new vector with the given component values</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>magnitude</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>decode</string>
+ <key>kind</key>
+ <string>function</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
- <string>base64</string>
+ <string>v</string>
<key>type</key>
- <string>string</string>
+ <string>vector</string>
</map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ </map>
+ <key>comment</key>
+ <string>Calculates the magnitude of a given vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>normalize</string>
+ <key>type</key>
+ <map>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
<map>
<key>name</key>
- <string>asBuffer</string>
+ <string>v</string>
<key>type</key>
- <string>false</string>
+ <string>vector</string>
</map>
</array>
<key>returnType</key>
- <string>string</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>encode</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>value</string>
- <key>type</key>
- <map>
- <key>kind</key>
- <string>union</string>
- <key>types</key>
- <array>
- <string>string</string>
- <string>buffer</string>
- </array>
- </map>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>comment</key>
- <string>encode a string or buffer to base64</string>
- </map>
- </array>
- </map>
- <map>
- <key>name</key>
- <string>vector</string>
- <key>properties</key>
- <array>
- <map>
- <key>name</key>
- <string>one</string>
- <key>type</key>
- <string>vector</string>
- <key>comment</key>
- <string>A one vector &lt;1,1,1&gt;</string>
- </map>
- <map>
- <key>name</key>
- <string>zero</string>
- <key>type</key>
- <string>vector</string>
- <key>comment</key>
- <string>A Zero vector &lt;0,0,0&gt;</string>
- </map>
- </array>
- <key>functions</key>
- <array>
- <map>
- <key>name</key>
- <string>abs</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.abs` to every component of the input vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>angle</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec1</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>vec2</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>axis</string>
- <key>type</key>
- <string>vector?</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Computes the angle between two vectors in radians. The axis, if specified, is used to determine the sign of the angle.</string>
- </map>
- <map>
- <key>name</key>
- <string>ceil</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.ceil` to every component of the input vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>clamp</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>min</string>
- <key>type</key>
<string>vector</string>
</map>
+ <key>comment</key>
+ <string>Computes the normalized version (unit vector) of a given vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>cross</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>max</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.clamp` to every component of the input vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>create</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number</string>
- </map>
+ <key>comment</key>
+ <string>Computes the cross product of two vectors</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>dot</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>number</string>
</map>
+ <key>comment</key>
+ <string>Computes the dot product of two vectors</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>angle</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>axis</string>
+ <key>type</key>
+ <string>vector</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
<string>number</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Creates a new vector with the given component values</string>
- </map>
- <map>
- <key>name</key>
- <string>cross</string>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec1</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>vec2</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Computes the cross product of two vectors.</string>
- </map>
- <map>
- <key>name</key>
- <string>dot</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Computes the angle between two vectors in radians</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>floor</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec1</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
+ <key>comment</key>
+ <string>Applies math.floor to every component of the input vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>ceil</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec2</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Computes the dot product of two vectors.</string>
- </map>
- <map>
- <key>name</key>
- <string>floor</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.ceil to every component of the input vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>abs</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.floor` to every component of the input vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>magnitude</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.abs to every component of the input vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sign</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>comment</key>
- <string>Calculates the magnitude of a given vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>max</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.sign to every component of the input vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>clamp</string>
+ <key>type</key>
<map>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>min</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>max</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
- <key>variadic</key>
- <boolean>true</boolean>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.max` to the corresponding components of the input vectors.</string>
- </map>
- <map>
- <key>name</key>
- <string>min</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.clamp to every component of the input vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>max</string>
+ <key>type</key>
<map>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>vector</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
- <key>variadic</key>
- <boolean>true</boolean>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.min` to the corresponding components of the input vectors.</string>
- </map>
- <map>
- <key>name</key>
- <string>normalize</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.max to the corresponding components of the input vectors</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>min</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>vector</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Computes the normalized version (unit vector) of a given vector.</string>
- </map>
- <map>
- <key>name</key>
- <string>sign</string>
- <key>parameters</key>
- <array>
+ <key>comment</key>
+ <string>Applies math.min to the corresponding components of the input vectors</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lerp</string>
+ <key>type</key>
<map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>vector</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
<string>vector</string>
</map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>comment</key>
- <string>Applies `math.sign` to every component of the input vector.</string>
- </map>
- </array>
+ <key>comment</key>
+ <string>Linear interpolation between two vectors</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>zero</string>
+ <key>type</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>A zero vector &lt;0,0,0&gt;</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>one</string>
+ <key>type</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>A one vector &lt;1,1,1&gt;</string>
+ </map>
+ </array>
+ </map>
+ <key>callSignature</key>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ </map>
</map>
- </array>
- </map>
+ <key>comment</key>
+ <string>Global 'vector' library table</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLEvents</string>
+ <key>type</key>
+ <string>LLEvents</string>
+ <key>comment</key>
+ <string>Second Life event management and registration</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLTimers</string>
+ <key>type</key>
+ <string>LLTimers</string>
+ <key>comment</key>
+ <string>Second Life timer management and scheduling</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>loadstring</string>
+ <key>type</key>
+ <string>nil</string>
+ <key>comment</key>
+ <string>loadstring is removed in SLua</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>getfenv</string>
+ <key>type</key>
+ <string>nil</string>
+ <key>comment</key>
+ <string>getfenv is removed in SLua</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>setfenv</string>
+ <key>type</key>
+ <string>nil</string>
+ <key>comment</key>
+ <string>setfenv is removed in SLua</string>
+ </map>
+ </array>
+ <key>modules</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>bit32</string>
+ <key>comment</key>
+ <string>Bitwise operations library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>arshift</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>disp</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Arithmetic right shift</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>band</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Bitwise AND of all arguments</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bnot</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Bitwise NOT</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bor</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Bitwise OR of all arguments</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bxor</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Bitwise XOR of all arguments</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>btest</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if bitwise AND of all arguments is not zero</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>extract</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>field</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>width</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Extracts bits from n at position field with width</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lrotate</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>disp</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Left rotate</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lshift</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>disp</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Left shift</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>replace</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>v</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>field</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>width</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Replaces bits in n at position field with width using value v</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>rrotate</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>disp</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Right rotate</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>rshift</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>disp</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Right shift</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>countlz</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Count leading zeros</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>countrz</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Count trailing zeros</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>byteswap</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Swap byte order</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>buffer</string>
+ <key>comment</key>
+ <string>Buffer manipulation library for binary data</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>size</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>buffer</string>
+ <key>comment</key>
+ <string>Creates a new buffer of the specified size</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>fromstring</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>str</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>buffer</string>
+ <key>comment</key>
+ <string>Creates a buffer from a string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tostring</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Converts buffer to string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readi8</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read signed 8-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readu8</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read unsigned 8-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readi16</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read signed 16-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readu16</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read unsigned 16-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readi32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read signed 32-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readu32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read unsigned 32-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readf32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read 32-bit float</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readf64</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read 64-bit float</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writei8</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write signed 8-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writeu8</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write unsigned 8-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writei16</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write signed 16-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writeu16</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write unsigned 16-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writei32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write signed 32-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writeu32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write unsigned 32-bit integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writef32</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write 32-bit float</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writef64</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write 64-bit float</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readstring</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>count</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Read string from buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writestring</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>count</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write string to buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>len</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the length of the buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>copy</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>target</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>targetOffset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>source</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sourceOffset</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>count</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Copy data from source buffer to target buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>fill</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>count</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Fill buffer with a value</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>readbits</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bitOffset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bitCount</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Read bits from buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>writebits</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>buffer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bitOffset</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>bitCount</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Write bits to buffer</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>coroutine</string>
+ <key>comment</key>
+ <string>Coroutine manipulation library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>(...any) -&gt; ...any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>thread</string>
+ <key>comment</key>
+ <string>Creates a new coroutine from a function</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>resume</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>co</string>
+ <key>type</key>
+ <string>thread</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(boolean, ...any)</string>
+ <key>comment</key>
+ <string>Resumes a coroutine, returns success and results</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>running</string>
+ <key>parameters</key>
+ <array/>
+ <key>returnType</key>
+ <string>thread?</string>
+ <key>comment</key>
+ <string>Returns the running coroutine, or nil if called from main thread</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>status</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>co</string>
+ <key>type</key>
+ <string>thread</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>&quot;running&quot; | &quot;suspended&quot; | &quot;normal&quot; | &quot;dead&quot;</string>
+ <key>comment</key>
+ <string>Returns the status of a coroutine</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>wrap</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>(...any) -&gt; ...any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(...any) -&gt; ...any</string>
+ <key>comment</key>
+ <string>Creates a coroutine and returns a function that resumes it</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>yield</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Suspends the coroutine and returns values to resume</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isyieldable</string>
+ <key>parameters</key>
+ <array/>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if the coroutine can yield</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>close</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>co</string>
+ <key>type</key>
+ <string>thread</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(boolean, string?)</string>
+ <key>comment</key>
+ <string>Closes a coroutine, returns success and optional error message</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>debug</string>
+ <key>comment</key>
+ <string>Debug library for introspection</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>info</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>thread</string>
+ <key>type</key>
+ <string>thread</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>level</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>options</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Returns information about a function or stack level</string>
+ <key>overloads</key>
+ <array>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>level</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>options</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Returns information about a stack level</string>
+ </map>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>func</string>
+ <key>type</key>
+ <string>(...any) -&gt; ...any</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>options</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Returns information about a function</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>traceback</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>thread</string>
+ <key>type</key>
+ <string>thread</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>message</string>
+ <key>type</key>
+ <string>string</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>level</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a string with a traceback of the call stack</string>
+ <key>overloads</key>
+ <array>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>message</string>
+ <key>type</key>
+ <string>string</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>level</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a string with a traceback of the current call stack</string>
+ </map>
+ </array>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>llbase64</string>
+ <key>comment</key>
+ <string>Base64 encoding/decoding library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>encode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>data</string>
+ <key>type</key>
+ <string>string | buffer</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Encodes a string or buffer to base64</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>decode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>data</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Decodes a base64 string to a string</string>
+ <key>overloads</key>
+ <array>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>data</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>asBuffer</string>
+ <key>type</key>
+ <string>boolean</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string | buffer</string>
+ <key>comment</key>
+ <string>Decodes a base64 string to a string or buffer</string>
+ </map>
+ </array>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lljson</string>
+ <key>comment</key>
+ <string>JSON encoding/decoding library for Second Life</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>null</string>
+ <key>type</key>
+ <string>any</string>
+ <key>comment</key>
+ <string>A constant to pass for null to json encode</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>empty_array_mt</string>
+ <key>type</key>
+ <string>{ [any]: any }</string>
+ <key>comment</key>
+ <string>Metatable for declaring table as an empty array for json encode</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>array_mt</string>
+ <key>type</key>
+ <string>{ [any]: any }</string>
+ <key>comment</key>
+ <string>Metatable for declaring table as an array for json encode</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>empty_array</string>
+ <key>type</key>
+ <string>any</string>
+ <key>comment</key>
+ <string>A constant to pass for an empty array to json encode</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>_NAME</string>
+ <key>type</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Name of the lljson library</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>_VERSION</string>
+ <key>type</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Version of the lljson library</string>
+ </map>
+ </array>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>encode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Encodes a Lua value as JSON</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>decode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>json</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>any</string>
+ <key>comment</key>
+ <string>Decodes a JSON string to a Lua value</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>slencode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tight</string>
+ <key>type</key>
+ <string>boolean</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Encodes a Lua value as JSON preserving SL types. Use tight to encode more compactly.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sldecode</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>json</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>any</string>
+ <key>comment</key>
+ <string>Decodes a JSON string to a Lua value preserving SL types</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>math</string>
+ <key>comment</key>
+ <string>Mathematical functions library</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>pi</string>
+ <key>type</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>The value of pi</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>huge</string>
+ <key>type</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>A value larger than any other numeric value (infinity)</string>
+ </map>
+ </array>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>abs</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the absolute value of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>acos</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the arc cosine of x (in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>asin</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the arc sine of x (in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>atan</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the arc tangent of x (in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>atan2</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the arc tangent of y/x (in radians), using the signs to determine the quadrant</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>ceil</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the smallest integer larger than or equal to x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>clamp</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>min</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>max</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns n clamped between min and max</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>cos</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the cosine of x (x in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>cosh</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the hyperbolic cosine of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>deg</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Converts x from radians to degrees</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>exp</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns e^x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>floor</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the largest integer smaller than or equal to x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>fmod</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the remainder of x/y that rounds towards zero</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>frexp</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(number, number)</string>
+ <key>comment</key>
+ <string>Returns m and e such that x = m * 2^e</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>ldexp</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>m</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>e</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns m * 2^e</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lerp</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>b</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Linear interpolation between a and b by t</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>log</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>base</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the logarithm of x in the given base (default e)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>log10</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the base-10 logarithm of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>map</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>inMin</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>inMax</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>outMin</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>outMax</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Maps x from input range to output range</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>max</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the maximum value among the arguments</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>min</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the minimum value among the arguments</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>modf</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(number, number)</string>
+ <key>comment</key>
+ <string>Returns the integer and fractional parts of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>noise</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>y</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>z</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns Perlin noise value for the given coordinates</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pow</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>base</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>exponent</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns base^exponent</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>rad</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Converts x from degrees to radians</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>random</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>m</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns a pseudo-random number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>randomseed</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>seed</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Sets the seed for the pseudo-random generator</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>round</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns x rounded to the nearest integer</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sign</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns -1, 0, or 1 depending on the sign of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sin</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the sine of x (x in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sinh</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the hyperbolic sine of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sqrt</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the square root of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tan</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the tangent of x (x in radians)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tanh</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the hyperbolic tangent of x</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isnan</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if x is NaN</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isinf</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if x is infinite</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isfinite</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>x</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if x is finite</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>os</string>
+ <key>comment</key>
+ <string>Operating system facilities library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>clock</string>
+ <key>parameters</key>
+ <array/>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns CPU time used by the program in seconds</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>date</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>format</string>
+ <key>type</key>
+ <string>string</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>time</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string | OsDateTime | nil</string>
+ <key>comment</key>
+ <string>Returns a string or table containing date and time</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>difftime</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t2</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>t1</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the difference in seconds between two times</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>time</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>time</string>
+ <key>type</key>
+ <string>OsDateTime</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number?</string>
+ <key>comment</key>
+ <string>Returns the current time or converts a table to time</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>String manipulation library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>byte</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...number</string>
+ <key>comment</key>
+ <string>Returns the internal numeric codes of the characters</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>char</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a string from character codes</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>find</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pattern</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>init</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>plain</string>
+ <key>type</key>
+ <string>boolean</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(number?, number?, ...string)</string>
+ <key>comment</key>
+ <string>Finds first match of pattern in string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>format</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>formatstring</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a formatted string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>gmatch</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pattern</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>() -&gt; ...string</string>
+ <key>comment</key>
+ <string>Returns an iterator function for pattern matches</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>gsub</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pattern</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>repl</string>
+ <key>type</key>
+ <string>string | { [string]: string } | (...string) -&gt; string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(string, number)</string>
+ <key>comment</key>
+ <string>Global substitution of pattern matches</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>len</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the length of the string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>lower</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Converts string to lowercase</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>match</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pattern</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>init</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...string</string>
+ <key>comment</key>
+ <string>Returns captures from pattern match</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pack</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>fmt</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Packs values into a binary string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>packsize</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>fmt</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the size of a packed string for the given format</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>rep</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a string repeated n times</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>reverse</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Reverses a string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>split</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>separator</string>
+ <key>type</key>
+ <string>string</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{string}</string>
+ <key>comment</key>
+ <string>Splits a string by separator</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sub</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a substring</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>unpack</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>fmt</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pos</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Unpacks values from a binary string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>upper</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Converts string to uppercase</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>table</string>
+ <key>comment</key>
+ <string>Table manipulation library</string>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>concat</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{string}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sep</string>
+ <key>type</key>
+ <string>string</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Concatenates table elements into a string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>foreach</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{[any]: any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>(key: any, value: any) -&gt; any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>any?</string>
+ <key>comment</key>
+ <string>Iterates over table key-value pairs (deprecated)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>foreachi</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>(index: number, value: any) -&gt; any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>any?</string>
+ <key>comment</key>
+ <string>Iterates over array indices (deprecated)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>getn</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the length of a table (deprecated, use # operator)</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>maxn</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number</string>
+ <key>comment</key>
+ <string>Returns the largest positive numeric index</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>insert</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Inserts an element at the end of a list</string>
+ <key>overloads</key>
+ <array>
+ <map>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pos</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Inserts an element at a specific position</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>remove</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pos</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>any?</string>
+ <key>comment</key>
+ <string>Removes and returns an element from a list</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sort</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>comp</string>
+ <key>type</key>
+ <string>(a: any, b: any) -&gt; boolean</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Sorts list elements in place</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>pack</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{ n: number, [number]: any }</string>
+ <key>comment</key>
+ <string>Packs arguments into a table with length field n</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>unpack</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>list</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Unpacks table elements as multiple return values</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>move</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>a1</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>e</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>a2</string>
+ <key>type</key>
+ <string>{any}</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{any}</string>
+ <key>comment</key>
+ <string>Moves elements from one table to another</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>create</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>count</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{any}</string>
+ <key>comment</key>
+ <string>Creates a new table with pre-allocated array slots</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>find</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{any}</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>value</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>init</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number?</string>
+ <key>comment</key>
+ <string>Finds the index of a value in an array</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>clear</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{[any]: any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>()</string>
+ <key>comment</key>
+ <string>Removes all elements from a table</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>freeze</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{[any]: any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{[any]: any}</string>
+ <key>comment</key>
+ <string>Makes a table read-only</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>isfrozen</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{[any]: any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>boolean</string>
+ <key>comment</key>
+ <string>Returns true if a table is frozen</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>clone</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>t</string>
+ <key>type</key>
+ <string>{[any]: any}</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>{[any]: any}</string>
+ <key>comment</key>
+ <string>Creates a shallow copy of a table</string>
+ </map>
+ </array>
+ </map>
+ <map>
+ <key>name</key>
+ <string>utf8</string>
+ <key>comment</key>
+ <string>UTF-8 support library</string>
+ <key>properties</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>charpattern</string>
+ <key>type</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Pattern that matches exactly one UTF-8 byte sequence</string>
+ </map>
+ </array>
+ <key>functions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>char</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>type</key>
+ <string>number</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>Returns a string from UTF-8 codepoints</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>codes</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>((string, number) -&gt; (number, number), string, number)</string>
+ <key>comment</key>
+ <string>Returns an iterator for UTF-8 codepoints in a string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>codepoint</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...number</string>
+ <key>comment</key>
+ <string>Returns the codepoints of characters in a string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>len</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ <map>
+ <key>name</key>
+ <string>j</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>(number?, number?)</string>
+ <key>comment</key>
+ <string>Returns the number of UTF-8 characters in a string, or nil and error position</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>offset</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>s</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>n</string>
+ <key>type</key>
+ <string>number</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>i</string>
+ <key>type</key>
+ <string>number</string>
+ <key>optional</key>
+ <boolean>true</boolean>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>number?</string>
+ <key>comment</key>
+ <string>Returns the byte position of the n-th character</string>
+ </map>
+ </array>
+ </map>
+ </array>
+ <key>globalFunctions</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>dangerouslyexecuterequiredmodule</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>f</string>
+ <key>type</key>
+ <string>(...any) -&gt; ...any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>...any</string>
+ <key>comment</key>
+ <string>Dangerously executes a required module function</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>touuid</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>val</string>
+ <key>type</key>
+ <string>string | buffer | uuid</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>uuid?</string>
+ <key>comment</key>
+ <string>Converts a string, buffer, or uuid to a uuid, returns nil if invalid</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>tovector</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>val</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector?</string>
+ <key>comment</key>
+ <string>Converts a value to a vector, returns nil if invalid</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>toquaternion</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>val</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion?</string>
+ <key>comment</key>
+ <string>Converts a value to a quaternion, returns nil if invalid</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>torotation</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>val</string>
+ <key>type</key>
+ <string>any</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion?</string>
+ <key>comment</key>
+ <string>Converts a value to a rotation (quaternion), returns nil if invalid</string>
+ </map>
+ </array>
+ <key>constants</key>
+ <array/>
+</map>
</llsd>