summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2025-11-17 15:43:09 -0800
committerRider Linden <rider@lindenlab.com>2025-11-17 15:44:59 -0800
commitb8145514d7a028c772d0d5e19f82b4a97c25a94b (patch)
treeb261c976d1afaacb22343e222a783e8047cfa5b8
parent2a620a9447b7d0544d5c500d88b4128565486018 (diff)
Updated lua types.
(cherry picked from commit bc9082f7d4f45495bafe1c02d1bbf70e2e1ea690)
-rw-r--r--indra/newview/app_settings/types_lua_default.xml3855
1 files changed, 1592 insertions, 2263 deletions
diff --git a/indra/newview/app_settings/types_lua_default.xml b/indra/newview/app_settings/types_lua_default.xml
index 5881df5ba5..11ab24d9c5 100644
--- a/indra/newview/app_settings/types_lua_default.xml
+++ b/indra/newview/app_settings/types_lua_default.xml
@@ -1,1325 +1,312 @@
<?xml version="1.0" encoding="UTF-8"?>
<llsd>
<map>
- <key>$schema</key>
- <string>./sl-lua-defs.schema.json</string>
- <key>aliases</key>
- <map>
- <key>list</key>
+ <key>version</key>
+ <string>1.0.0</string>
+ <key>typeAliases</key>
+ <array>
<map>
- <key>aliasTypes</key>
- <array>
- <string>string</string>
- <string>number</string>
- <string>integer</string>
- <string>vector</string>
- <string>uuid</string>
- <string>quaternion</string>
- <string>boolean</string>
- </array>
- <key>aliasIndex</key>
- <string>number</string>
- <key>tooltip</key>
- <string>A table with numeric indices containing various value types</string>
- </map>
- <key>table</key>
- <map>
- <key>aliasTypes</key>
- <array>
- <string>any</string>
- </array>
- <key>aliasIndex</key>
- <string>any</string>
- <key>tooltip</key>
- <string>A table with any type of indices and values</string>
- </map>
- <key>numeric</key>
- <map>
- <key>aliasTypes</key>
- <array>
- <string>number</string>
- <string>boolean</string>
- <string>integer</string>
- </array>
- <key>tooltip</key>
- <string>A union type representing numeric values</string>
- </map>
- <key>lljson_constant</key>
- <map>
- <key>aliasTypes</key>
- <array>
- <string>number</string>
- </array>
- <key>tooltip</key>
- <string>A constant value used in lljson module</string>
- </map>
- <key>uuid_like</key>
- <map>
- <key>aliasTypes</key>
- <array>
- <string>string</string>
- <string>uuid</string>
- </array>
- <key>tooltip</key>
- <string>A union type representing uuid values</string>
- </map>
- <key>EventHandler</key>
- <map>
- <key>aliasTypes</key>
- <array>
- <string>(...any) -&gt; ()</string>
- </array>
- <key>tooltip</key>
- <string>A function type for event handlers that accepts variable arguments</string>
- </map>
- </map>
- <key>functions</key>
- <map>
- <key>toquaternion</key>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>str</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>quaternion | nil</string>
- <key>tooltip</key>
- <string>Creates a quaternion from a string argument in format `&lt;1,1,1,1&gt;`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to 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>
- <key>tovector</key>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>str</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector | nil</string>
- <key>tooltip</key>
- <string>Creates a vector from a string argument in format `&lt;1,1,1&gt;`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to 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>
+ <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>
</map>
- <key>integer</key>
<map>
- <key>parameters</key>
- <array>
+ <key>name</key>
+ <string>list</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
<map>
- <key>name</key>
- <string>value</string>
- <key>type</key>
- <string>string | number</string>
+ <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>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Creates an integer value from argument</string>
+ </map>
</map>
- <key>uuid</key>
<map>
- <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>tooltip</key>
- <string>Creates a uuid from a string argument</string>
- </map>
- <key>vector</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>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Creates a vector.</string>
- </map>
- <key>quaternion</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>
- </map>
- <map>
- <key>name</key>
- <string>s</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>quaternion</string>
- <key>tooltip</key>
- <string>Creates a quaternion rotation.</string>
+ <key>name</key>
+ <string>lljson_constant</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>reference</string>
+ <key>name</key>
+ <string>number</string>
+ </map>
</map>
- </map>
- <key>classes</key>
- <map>
- <key>integer</key>
<map>
- <key>methods</key>
+ <key>name</key>
+ <string>DetectedEvent</string>
+ <key>definition</key>
<map>
- <key>__add</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Addition operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Addition operator for integer and number</string>
- </map>
- </array>
- <key>__sub</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Subtraction operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Subtraction operator for integer and number</string>
- </map>
- </array>
- <key>__mul</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Multiplication operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Multiplication operator for integer and number</string>
- </map>
- </array>
- <key>__div</key>
+ <key>kind</key>
+ <string>table</string>
+ <key>properties</key>
<array>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Division operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Division operator for integer and number</string>
- </map>
- </array>
- <key>__unm</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Unary minus operator</string>
- </map>
- </array>
- <key>__mod</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Modulo operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Modulo operator for integer and number</string>
- </map>
- </array>
- <key>__pow</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Power operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Power operator for integer and number</string>
- </map>
- </array>
- <key>__idiv</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Integer division operator for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Integer division operator for integer and number</string>
- </map>
- </array>
- <key>__eq</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
+ <key>name</key>
+ <string>valid</string>
+ <key>type</key>
<string>boolean</string>
- <key>tooltip</key>
- <string>Equality comparison operator</string>
</map>
- </array>
- <key>__lt</key>
- <array>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>boolean</string>
- <key>tooltip</key>
- <string>Less than comparison operator</string>
+ <key>name</key>
+ <string>index</string>
+ <key>type</key>
+ <string>number</string>
</map>
- </array>
- <key>__le</key>
- <array>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
+ <key>name</key>
+ <string>can_change_damage</string>
+ <key>type</key>
<string>boolean</string>
- <key>tooltip</key>
- <string>Less than or equal comparison operator</string>
</map>
</array>
+ <key>methods</key>
+ <array />
</map>
- <key>tooltip</key>
- <string>Integer class with arithmetic and comparison operators</string>
</map>
- <key>uuid</key>
<map>
- <key>methods</key>
+ <key>name</key>
+ <string>DetectedEventName</string>
+ <key>definition</key>
<map>
- <key>__tostring</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>uuid</string>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>tooltip</key>
- <string>Convert UUID to string representation</string>
- </map>
- </array>
+ <key>kind</key>
+ <string>literal-union</string>
+ <key>values</key>
+ <array />
</map>
- <key>properties</key>
- <map>
- <key>istruthy</key>
- <string>boolean</string>
- </map>
- <key>tooltip</key>
- <string>UUID class with string conversion and truthiness property</string>
</map>
- <key>quaternion</key>
<map>
- <key>properties</key>
+ <key>name</key>
+ <string>NonDetectedEventName</string>
+ <key>definition</key>
<map>
- <key>x</key>
- <string>number</string>
- <key>y</key>
- <string>number</string>
- <key>z</key>
- <string>number</string>
- <key>s</key>
- <string>number</string>
+ <key>kind</key>
+ <string>literal-union</string>
+ <key>values</key>
+ <array />
</map>
- <key>methods</key>
+ </map>
+ <map>
+ <key>name</key>
+ <string>EventName</string>
+ <key>definition</key>
<map>
- <key>__mul</key>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
<array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Multiply vector by quaternion</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- </array>
- <key>returnType</key>
- <string>quaternion</string>
- <key>tooltip</key>
- <string>Multiply quaternion by quaternion</string>
- </map>
+ <string>DetectedEventName</string>
+ <string>NonDetectedEventName</string>
</array>
</map>
- <key>tooltip</key>
- <string>Quaternion class representing a rotation with x, y, z, s components</string>
</map>
- <key>vector</key>
<map>
- <key>properties</key>
+ <key>name</key>
+ <string>EventHandler</string>
+ <key>definition</key>
<map>
- <key>x</key>
- <string>number</string>
- <key>y</key>
- <string>number</string>
- <key>z</key>
- <string>number</string>
- </map>
- <key>methods</key>
- <map>
- <key>__mul</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
<array>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Multiply vector by vector</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Multiply vector by quaternion</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Multiply vector by number</string>
- </map>
- </array>
- <key>__div</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Divide vector by vector</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Divide vector by quaternion</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Divide vector by number</string>
- </map>
- </array>
- <key>__idiv</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Floor divide vector by vector</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>quaternion</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Floor divide vector by quaternion</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Floor divide vector by number</string>
- </map>
- </array>
- <key>__add</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Add two vectors</string>
- </map>
- </array>
- <key>__sub</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- <map>
- <key>name</key>
- <string>other</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Subtract vector from vector</string>
- </map>
- </array>
- <key>__unm</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Negate a vector</string>
+ <key>type</key>
+ <string>any</string>
+ <key>variadic</key>
+ <boolean>true</boolean>
</map>
</array>
+ <key>returnType</key>
+ <string>()</string>
</map>
- <key>tooltip</key>
- <string>Vector class representing a 3D vector with x, y, z components</string>
</map>
- <key>DetectedEvent</key>
<map>
- <key>properties</key>
+ <key>name</key>
+ <string>DetectedEventHandler</string>
+ <key>definition</key>
<map>
- <key>index</key>
- <string>number</string>
- <key>valid</key>
- <string>boolean</string>
- <key>canAdjustDamage</key>
- <string>boolean</string>
- </map>
- <key>methods</key>
- <map>
- <key>adjustDamage</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- <map>
- <key>name</key>
- <string>damage</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>()</string>
- <key>tooltip</key>
- <string>Adjusts the damage amount for this detected event</string>
- </map>
- </array>
- <key>getOwner</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- </array>
- <key>returnType</key>
- <string>any</string>
- <key>tooltip</key>
- <string>Gets the owner of the detected object</string>
- </map>
- </array>
- <key>getName</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- </array>
- <key>returnType</key>
- <string>any</string>
- <key>tooltip</key>
- <string>Gets the name of the detected object</string>
- </map>
- </array>
- <key>getFace</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- </array>
- <key>returnType</key>
- <string>any</string>
- <key>tooltip</key>
- <string>Gets the face number of the detected collision/touch</string>
- </map>
- </array>
- <key>getLinkNumber</key>
+ <key>kind</key>
+ <string>function</string>
+ <key>parameters</key>
<array>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- </array>
- <key>returnType</key>
- <string>any</string>
- <key>tooltip</key>
- <string>Gets the link number of the detected object</string>
+ <key>type</key>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string>DetectedEvent</string>
+ </map>
</map>
</array>
- <key>getKey</key>
+ <key>returnType</key>
+ <string>()</string>
+ </map>
+ </map>
+ <map>
+ <key>name</key>
+ <string>LLEventsProto</string>
+ <key>definition</key>
+ <map>
+ <key>kind</key>
+ <string>table</string>
+ <key>methods</key>
<array>
<map>
+ <key>name</key>
+ <string>eventNames</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
</map>
</array>
<key>returnType</key>
- <string>any</string>
- <key>tooltip</key>
- <string>Gets the key/UUID of the detected object</string>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string>string</string>
+ </map>
</map>
- </array>
- <key>new</key>
- <array>
<map>
+ <key>name</key>
+ <string>listeners</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>DetectedEvent</string>
- </map>
- <map>
- <key>name</key>
- <string>index</string>
- <key>type</key>
- <string>number</string>
</map>
<map>
<key>name</key>
- <string>canAdjustDamage</string>
+ <string>eventName</string>
<key>type</key>
- <string>boolean</string>
+ <string>EventName</string>
</map>
</array>
<key>returnType</key>
- <string>DetectedEvent</string>
- <key>tooltip</key>
- <string>Creates a new DetectedEvent instance</string>
+ <map>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string>EventHandler</string>
+ </map>
</map>
- </array>
- </map>
- <key>tooltip</key>
- <string>DetectedEvent class for handling multi-event handlers like touch, collision, sensor events</string>
- </map>
- <key>LLEvents</key>
- <map>
- <key>properties</key>
- <map>
- <key>_handlers</key>
- <string>{ [string]: { EventHandler } }</string>
- </map>
- <key>methods</key>
- <map>
- <key>on</key>
- <array>
<map>
+ <key>name</key>
+ <string>on</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>LLEvents</string>
</map>
<map>
<key>name</key>
- <string>event_name</string>
+ <string>eventName</string>
<key>type</key>
- <string>string</string>
+ <string>DetectedEventName</string>
</map>
<map>
<key>name</key>
<string>handler</string>
<key>type</key>
- <string>EventHandler</string>
+ <string>DetectedEventHandler</string>
</map>
</array>
<key>returnType</key>
<string>EventHandler</string>
- <key>tooltip</key>
- <string>Registers a persistent event handler for the specified event</string>
- </map>
- </array>
- <key>once</key>
- <array>
- <map>
- <key>parameters</key>
+ <key>overloads</key>
<array>
<map>
<key>name</key>
- <string>self</string>
- <key>type</key>
- <string>LLEvents</string>
- </map>
- <map>
- <key>name</key>
- <string>event_name</string>
- <key>type</key>
- <string>string</string>
- </map>
- <map>
- <key>name</key>
- <string>handler</string>
- <key>type</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>
- <key>returnType</key>
- <string>EventHandler</string>
- <key>tooltip</key>
- <string>Registers a one-time event handler that will be automatically removed after first execution</string>
</map>
- </array>
- <key>off</key>
- <array>
<map>
+ <key>name</key>
+ <string>off</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>LLEvents</string>
- </map>
- <map>
- <key>name</key>
- <string>event_name</string>
- <key>type</key>
- <string>string</string>
</map>
<map>
<key>name</key>
<string>handler</string>
<key>type</key>
<string>EventHandler</string>
- <key>optional</key>
- <boolean>1</boolean>
</map>
</array>
<key>returnType</key>
<string>boolean</string>
- <key>tooltip</key>
- <string>Removes an event handler and returns true if successful</string>
- </map>
- </array>
- <key>listeners</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>LLEvents</string>
- </map>
- <map>
- <key>name</key>
- <string>event_name</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>{ EventHandler }</string>
- <key>tooltip</key>
- <string>Returns a copy of all handlers registered for the specified event</string>
- </map>
- </array>
- <key>eventNames</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>self</string>
- <key>type</key>
- <string>LLEvents</string>
- </map>
- </array>
- <key>returnType</key>
- <string>{ string }</string>
- <key>tooltip</key>
- <string>Returns an array of all event names that have registered handlers</string>
</map>
</array>
</map>
- <key>tooltip</key>
- <string>LLEvents interface providing dynamic event handler management for Second Life scripts</string>
</map>
- <key>LLTimers</key>
<map>
- <key>properties</key>
- <map>
- <key>_timers</key>
- <string>{ _LLTimerData }</string>
- </map>
- <key>methods</key>
+ <key>name</key>
+ <string>LLTimersProto</string>
+ <key>definition</key>
<map>
- <key>on</key>
+ <key>kind</key>
+ <string>table</string>
+ <key>methods</key>
<array>
<map>
+ <key>name</key>
+ <string>every</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>LLTimers</string>
</map>
<map>
<key>name</key>
@@ -1331,25 +318,34 @@
<key>name</key>
<string>handler</string>
<key>type</key>
- <string>EventHandler</string>
+ <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>
- <key>tooltip</key>
- <string>Registers a repeating timer that will call the handler every specified number of seconds</string>
</map>
- </array>
- <key>once</key>
- <array>
<map>
+ <key>name</key>
+ <string>once</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>LLTimers</string>
</map>
<map>
<key>name</key>
@@ -1361,1128 +357,1461 @@
<key>name</key>
<string>handler</string>
<key>type</key>
- <string>EventHandler</string>
+ <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>
- <key>tooltip</key>
- <string>Registers a one-shot timer that will call the handler once after the specified delay</string>
</map>
- </array>
- <key>off</key>
- <array>
<map>
+ <key>name</key>
+ <string>off</string>
<key>parameters</key>
<array>
<map>
<key>name</key>
<string>self</string>
- <key>type</key>
- <string>LLTimers</string>
</map>
<map>
<key>name</key>
<string>handler</string>
<key>type</key>
<string>EventHandler</string>
- <key>optional</key>
- <boolean>1</boolean>
</map>
</array>
<key>returnType</key>
<string>boolean</string>
- <key>tooltip</key>
- <string>Removes a timer handler and returns true if successful</string>
</map>
</array>
</map>
- <key>tooltip</key>
- <string>LLTimers interface providing timer management for Second Life scripts</string>
</map>
- <key>_LLTimerData</key>
+ </array>
+ <key>classes</key>
+ <array>
<map>
+ <key>name</key>
+ <string>uuid</string>
<key>properties</key>
- <map>
- <key>handler</key>
- <string>EventHandler</string>
- <key>nextRun</key>
- <string>number</string>
- <key>interval</key>
- <string>number | nil</string>
- </map>
- <key>tooltip</key>
- <string>Internal timer data structure containing handler function and timing information</string>
+ <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>modules</key>
- <map>
- <key>bit32</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>
- <map>
- <key>arshift</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Arithmetic right shift for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Arithmetic right shift for mixed types</string>
- </map>
- </array>
- <key>band</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Bitwise AND for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer | number</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Bitwise AND for mixed types</string>
- </map>
- </array>
- <key>bnot</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Bitwise NOT for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Bitwise NOT for mixed types</string>
- </map>
- </array>
- <key>bor</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Bitwise OR for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer | number</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Bitwise OR for mixed types</string>
- </map>
- </array>
- <key>bxor</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Bitwise XOR for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer | number</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Bitwise XOR for mixed types</string>
- </map>
- </array>
- <key>btest</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>integer | number</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>boolean</string>
- <key>tooltip</key>
- <string>Test if bitwise AND is non-zero</string>
- </map>
- </array>
- <key>extract</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Extract bits from integer</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Extract bits from mixed types</string>
- </map>
- </array>
- <key>lrotate</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Left rotate for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Left rotate for mixed types</string>
- </map>
- </array>
- <key>lshift</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Left shift for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Left shift for mixed types</string>
- </map>
- </array>
- <key>replace</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>r</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>integer</string>
- <key>optional</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Replace bits in integer</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>r</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>f</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>w</string>
- <key>type</key>
- <string>integer | number</string>
- <key>optional</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Replace bits in mixed types</string>
- </map>
- </array>
- <key>rrotate</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Right rotate for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Right rotate for mixed types</string>
- </map>
- </array>
- <key>rshift</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Right shift for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- <map>
- <key>name</key>
- <string>i</string>
- <key>type</key>
- <string>integer | number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Right shift for mixed types</string>
- </map>
- </array>
- <key>countlz</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Count leading zeros for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Count leading zeros for numbers</string>
- </map>
- </array>
- <key>countrz</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Count trailing zeros for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Count trailing zeros for numbers</string>
- </map>
- </array>
- <key>byteswap</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Byte swap for integers</string>
- </map>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>n</string>
- <key>type</key>
- <string>number</string>
- </map>
- </array>
- <key>returnType</key>
- <string>integer</string>
- <key>tooltip</key>
- <string>Byte swap for numbers</string>
- </map>
- </array>
- </map>
- <key>tooltip</key>
- <string>Bitwise operations library providing bit manipulation functions</string>
+ <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>
+ <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>quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>quaternion</string>
+ <key>comment</key>
+ <string>multiply vector/quaternion by quaternion</string>
+ </map>
+ </array>
+ </map>
+ </array>
</map>
- <key>vector</key>
<map>
+ <key>name</key>
+ <string>vector</string>
<key>properties</key>
- <map>
- <key>one</key>
- <string>vector</string>
- <key>zero</key>
- <string>vector</string>
- </map>
+ <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>
+ <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>parameters</key>
+ <array>
+ <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>vector</string>
+ <key>comment</key>
+ <string>multiply vector by number, vector, or quaternion</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>number</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>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>divide vector by number, vector, or quaternion</string>
+ <key>overloads</key>
+ <array>
+ <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>quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>divide vector by number, vector, or quaternion</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</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>
+ </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>
+ <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>quaternion</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>vector</string>
+ <key>comment</key>
+ <string>floor divide vector by number, vector, or quaternion</string>
+ </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>number</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>
+ <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>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>
+ </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>abs</key>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
<array>
- <map>
- <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>tooltip</key>
- <string>Applies math.abs to every component of the input vector</string>
- </map>
- </array>
- <key>angle</key>
- <array>
- <map>
- <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>
- <key>optional</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</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>
- </array>
- <key>ceil</key>
- <array>
- <map>
- <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>tooltip</key>
- <string>Applies math.ceil to every component of the input vector</string>
- </map>
- </array>
- <key>clamp</key>
- <array>
- <map>
- <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>
- <map>
- <key>name</key>
- <string>max</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Applies math.clamp to every component of the input vector</string>
- </map>
- </array>
- <key>create</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>x</string>
- <key>type</key>
- <string>number | integer</string>
- </map>
- <map>
- <key>name</key>
- <string>y</string>
- <key>type</key>
- <string>number | integer</string>
- </map>
- <map>
- <key>name</key>
- <string>z</string>
- <key>type</key>
- <string>number | integer</string>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Creates a new vector with the given component values</string>
- </map>
- </array>
- <key>cross</key>
- <array>
- <map>
- <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>tooltip</key>
- <string>Computes the cross product of two vectors</string>
- </map>
- </array>
- <key>dot</key>
- <array>
- <map>
- <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>number</string>
- <key>tooltip</key>
- <string>Computes the dot product of two vectors</string>
- </map>
- </array>
- <key>floor</key>
- <array>
- <map>
- <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>tooltip</key>
- <string>Applies math.floor to every component of the input vector</string>
- </map>
- </array>
- <key>magnitude</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>vec</string>
- <key>type</key>
- <string>vector</string>
- </map>
- </array>
- <key>returnType</key>
- <string>number</string>
- <key>tooltip</key>
- <string>Calculates the magnitude of a given vector</string>
- </map>
- </array>
- <key>max</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>vector</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Applies math.max to the corresponding components of the input vectors</string>
- </map>
- </array>
- <key>min</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>args</string>
- <key>type</key>
- <string>vector</string>
- <key>variadic</key>
- <boolean>1</boolean>
- </map>
- </array>
- <key>returnType</key>
- <string>vector</string>
- <key>tooltip</key>
- <string>Applies math.min to the corresponding components of the input vectors</string>
- </map>
- </array>
- <key>normalize</key>
- <array>
- <map>
- <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>tooltip</key>
- <string>Computes the normalized version (unit vector) of a given vector</string>
- </map>
- </array>
- <key>sign</key>
- <array>
- <map>
- <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>tooltip</key>
- <string>Applies math.sign to every component of the input vector</string>
- </map>
+ <string>quaternion</string>
+ <string>nil</string>
</array>
</map>
- <key>tooltip</key>
- <string>Vector utility functions for operations on vectors</string>
+ <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>
- <key>lljson</key>
<map>
- <key>properties</key>
- <map>
- <key>empty_array</key>
- <string>lljson_constant</string>
- <key>null</key>
- <string>lljson_constant</string>
- </map>
- <key>methods</key>
+ <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>
<map>
- <key>decode</key>
+ <key>kind</key>
+ <string>union</string>
+ <key>types</key>
<array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>json</string>
- <key>type</key>
- <string>string</string>
- </map>
- </array>
- <key>returnType</key>
- <string>string | number | integer | vector | uuid | quaternion | boolean | table | nil</string>
- <key>tooltip</key>
- <string>Decode JSON string to Lua value</string>
- </map>
- </array>
- <key>encode</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>value</string>
- <key>type</key>
- <string>string | number | integer | vector | uuid | quaternion | boolean | table | nil</string>
- </map>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>tooltip</key>
- <string>Encode Lua value as JSON</string>
- </map>
+ <string>vector</string>
+ <string>nil</string>
</array>
</map>
- <key>tooltip</key>
- <string>JSON encoding and decoding module with constants for null and empty arrays</string>
+ <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>
- <key>llbase64</key>
<map>
- <key>methods</key>
- <map>
- <key>decode</key>
- <array>
+ <key>name</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>
+ <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>
+ <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 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>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>tooltip</key>
- <string>Decode a base64 string to a string</string>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string></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>
<map>
- <key>parameters</key>
- <array>
- <map>
- <key>name</key>
- <string>base64</string>
- <key>type</key>
- <string>string</string>
- </map>
- <map>
- <key>name</key>
- <string>asBuffer</string>
- <key>type</key>
- <string>true</string>
- </map>
- </array>
- <key>returnType</key>
- <string>buffer</string>
- <key>tooltip</key>
- <string>Decode a base64 string to a buffer</string>
+ <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>
+ <map>
+ <key>name</key>
+ <string>json</string>
+ <key>type</key>
+ <string>string</string>
+ </map>
+ </array>
+ <key>returnType</key>
<map>
- <key>parameters</key>
+ <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>name</key>
- <string>base64</string>
- <key>type</key>
- <string>string</string>
- </map>
- <map>
- <key>name</key>
- <string>asBuffer</string>
- <key>type</key>
- <string>false</string>
+ <key>kind</key>
+ <string>array</string>
+ <key>elementType</key>
+ <string></string>
</map>
+ <string>nil</string>
</array>
- <key>returnType</key>
- <string>string</string>
- <key>tooltip</key>
- <string>Decode a base64 string to a string</string>
</map>
- </array>
- <key>encode</key>
- <array>
- <map>
- <key>parameters</key>
- <array>
+ <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>name</key>
- <string>value</string>
- <key>type</key>
- <string>string | buffer</string>
+ <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>
- </array>
- <key>returnType</key>
- <string>string</string>
- <key>tooltip</key>
- <string>Encode a string or buffer to base64</string>
- </map>
- </array>
- </map>
- <key>tooltip</key>
- <string>Base64 encoding and decoding module for strings and buffers</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>string</string>
+ <key>comment</key>
+ <string>encode lua value as json</string>
+ </map>
+ </array>
+ </map>
+ <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>
+ <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>
+ <map>
+ <key>name</key>
+ <string>asBuffer</string>
+ <key>type</key>
+ <string>true</string>
+ </map>
+ </array>
+ <key>returnType</key>
+ <string>buffer</string>
+ </map>
+ <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>
+ <map>
+ <key>name</key>
+ <string>asBuffer</string>
+ <key>type</key>
+ <string>false</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>
+ <map>
+ <key>name</key>
+ <string>max</string>
+ <key>type</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>
+ <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 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>
+ <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>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>
+ <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.floor` to every component of the input vector.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>magnitude</string>
+ <key>parameters</key>
+ <array>
+ <map>
+ <key>name</key>
+ <string>vec</string>
+ <key>type</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>
+ <map>
+ <key>type</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>
+ <map>
+ <key>type</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>
+ <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>Computes the normalized version (unit vector) of a given vector.</string>
+ </map>
+ <map>
+ <key>name</key>
+ <string>sign</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.sign` to every component of the input vector.</string>
+ </map>
+ </array>
</map>
- </map>
+ </array>
</map>
</llsd>