From 684af8426b36f9ad4c2324ae0c5b4dc62f840079 Mon Sep 17 00:00:00 2001 From: Rider Linden Date: Wed, 17 Sep 2025 13:14:23 -0700 Subject: initial Lua types files, and switch websocket server to use a single connection for all scripts. --- indra/newview/llsyntaxid.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'indra/newview/llsyntaxid.cpp') diff --git a/indra/newview/llsyntaxid.cpp b/indra/newview/llsyntaxid.cpp index 1f8766eea2..a891bf945e 100644 --- a/indra/newview/llsyntaxid.cpp +++ b/indra/newview/llsyntaxid.cpp @@ -343,7 +343,7 @@ void LLSyntaxLua::initialize() if (mInitialized) return; loadDefaultKeywordsIntoLLSD(); - + loadLuaTypesIntoLLSD(); mInitialized = true; } @@ -361,3 +361,18 @@ void LLSyntaxLua::loadDefaultKeywordsIntoLLSD() } } } + +void LLSyntaxLua::loadLuaTypesIntoLLSD() +{ + std::string fullFileSpec = gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "types_lua_default.llsd"); + llifstream file(fullFileSpec.c_str()); + + if (file.good()) + { + LLSD content; + if (LLSDSerialize::fromXML(content, file) != LLSDParser::PARSE_FAILURE) + { + mTypesXml = content; + } + } +} -- cgit v1.3 From 5306ad767bc1cc768145074aac25944c6059b3c2 Mon Sep 17 00:00:00 2001 From: Rider Linden Date: Wed, 8 Oct 2025 17:42:32 -0700 Subject: Renamed types_lua_default.llsd to types_lua_default.xml, returning an empty lang def is not a success. Hopefully this will package correctly. --- indra/newview/CMakeLists.txt | 2 +- indra/newview/app_settings/types_lua_default.llsd | 2488 --------------------- indra/newview/app_settings/types_lua_default.xml | 2488 +++++++++++++++++++++ indra/newview/llscripteditorws.cpp | 4 +- indra/newview/llsyntaxid.cpp | 2 +- 5 files changed, 2492 insertions(+), 2492 deletions(-) delete mode 100644 indra/newview/app_settings/types_lua_default.llsd create mode 100644 indra/newview/app_settings/types_lua_default.xml (limited to 'indra/newview/llsyntaxid.cpp') diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 702a738e57..87e350a69d 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1674,7 +1674,7 @@ set(viewer_APPSETTINGS_FILES app_settings/std_bump.ini app_settings/toolbars.xml app_settings/trees.xml - app_settings/types_lua_default.llsd + app_settings/types_lua_default.xml app_settings/viewerart.xml app_settings/message.xml ${CMAKE_SOURCE_DIR}/../scripts/messages/message_template.msg diff --git a/indra/newview/app_settings/types_lua_default.llsd b/indra/newview/app_settings/types_lua_default.llsd deleted file mode 100644 index 5881df5ba5..0000000000 --- a/indra/newview/app_settings/types_lua_default.llsd +++ /dev/null @@ -1,2488 +0,0 @@ - - - - $schema - ./sl-lua-defs.schema.json - aliases - - list - - aliasTypes - - string - number - integer - vector - uuid - quaternion - boolean - - aliasIndex - number - tooltip - A table with numeric indices containing various value types - - table - - aliasTypes - - any - - aliasIndex - any - tooltip - A table with any type of indices and values - - numeric - - aliasTypes - - number - boolean - integer - - tooltip - A union type representing numeric values - - lljson_constant - - aliasTypes - - number - - tooltip - A constant value used in lljson module - - uuid_like - - aliasTypes - - string - uuid - - tooltip - A union type representing uuid values - - EventHandler - - aliasTypes - - (...any) -> () - - tooltip - A function type for event handlers that accepts variable arguments - - - functions - - toquaternion - - parameters - - - name - str - type - string - - - returnType - quaternion | nil - tooltip - Creates a quaternion from a string argument in format `<1,1,1,1>`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to the closing `>` are interpreted as valid. So `<1,1,1,1` and `<1,1,1,1spoon` are both cast to `<1,1,1,1>`. When testing if a string is a quaternion or a vector, you should test with `toquaternion` first. - - tovector - - parameters - - - name - str - type - string - - - returnType - vector | nil - tooltip - Creates a vector from a string argument in format `<1,1,1>`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to the closing `>` are interpreted as valid. So `<1,1,1`, `<1,1,1,1` and `<1,1,1spoon` are all cast to `<1,1,1>`. When testing if a string is a quaternion or a vector, you should test with `toquaternion` first. - - integer - - parameters - - - name - value - type - string | number - - - returnType - integer - tooltip - Creates an integer value from argument - - uuid - - parameters - - - name - str - type - string - - - returnType - uuid - tooltip - Creates a uuid from a string argument - - vector - - parameters - - - name - x - type - number - - - name - y - type - number - - - name - z - type - number - - - returnType - vector - tooltip - Creates a vector. - - quaternion - - parameters - - - name - x - type - number - - - name - y - type - number - - - name - z - type - number - - - name - s - type - number - - - returnType - quaternion - tooltip - Creates a quaternion rotation. - - - classes - - integer - - methods - - __add - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Addition operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Addition operator for integer and number - - - __sub - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Subtraction operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Subtraction operator for integer and number - - - __mul - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Multiplication operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Multiplication operator for integer and number - - - __div - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Division operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Division operator for integer and number - - - __unm - - - parameters - - - name - self - type - integer - - - returnType - integer - tooltip - Unary minus operator - - - __mod - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Modulo operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Modulo operator for integer and number - - - __pow - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Power operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - number - tooltip - Power operator for integer and number - - - __idiv - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - integer - tooltip - Integer division operator for integers - - - parameters - - - name - self - type - integer - - - name - other - type - number - - - returnType - integer - tooltip - Integer division operator for integer and number - - - __eq - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - boolean - tooltip - Equality comparison operator - - - __lt - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - boolean - tooltip - Less than comparison operator - - - __le - - - parameters - - - name - self - type - integer - - - name - other - type - integer - - - returnType - boolean - tooltip - Less than or equal comparison operator - - - - tooltip - Integer class with arithmetic and comparison operators - - uuid - - methods - - __tostring - - - parameters - - - name - self - type - uuid - - - returnType - string - tooltip - Convert UUID to string representation - - - - properties - - istruthy - boolean - - tooltip - UUID class with string conversion and truthiness property - - quaternion - - properties - - x - number - y - number - z - number - s - number - - methods - - __mul - - - parameters - - - name - self - type - quaternion - - - name - other - type - vector - - - returnType - vector - tooltip - Multiply vector by quaternion - - - parameters - - - name - self - type - quaternion - - - name - other - type - quaternion - - - returnType - quaternion - tooltip - Multiply quaternion by quaternion - - - - tooltip - Quaternion class representing a rotation with x, y, z, s components - - vector - - properties - - x - number - y - number - z - number - - methods - - __mul - - - parameters - - - name - self - type - vector - - - name - other - type - vector - - - returnType - vector - tooltip - Multiply vector by vector - - - parameters - - - name - self - type - vector - - - name - other - type - quaternion - - - returnType - vector - tooltip - Multiply vector by quaternion - - - parameters - - - name - self - type - vector - - - name - other - type - number - - - returnType - vector - tooltip - Multiply vector by number - - - __div - - - parameters - - - name - self - type - vector - - - name - other - type - vector - - - returnType - vector - tooltip - Divide vector by vector - - - parameters - - - name - self - type - vector - - - name - other - type - quaternion - - - returnType - vector - tooltip - Divide vector by quaternion - - - parameters - - - name - self - type - vector - - - name - other - type - number - - - returnType - vector - tooltip - Divide vector by number - - - __idiv - - - parameters - - - name - self - type - vector - - - name - other - type - vector - - - returnType - vector - tooltip - Floor divide vector by vector - - - parameters - - - name - self - type - vector - - - name - other - type - quaternion - - - returnType - vector - tooltip - Floor divide vector by quaternion - - - parameters - - - name - self - type - vector - - - name - other - type - number - - - returnType - vector - tooltip - Floor divide vector by number - - - __add - - - parameters - - - name - self - type - vector - - - name - other - type - vector - - - returnType - vector - tooltip - Add two vectors - - - __sub - - - parameters - - - name - self - type - vector - - - name - other - type - vector - - - returnType - vector - tooltip - Subtract vector from vector - - - __unm - - - parameters - - - name - self - type - vector - - - returnType - vector - tooltip - Negate a vector - - - - tooltip - Vector class representing a 3D vector with x, y, z components - - DetectedEvent - - properties - - index - number - valid - boolean - canAdjustDamage - boolean - - methods - - adjustDamage - - - parameters - - - name - self - type - DetectedEvent - - - name - damage - type - number - - - returnType - () - tooltip - Adjusts the damage amount for this detected event - - - getOwner - - - parameters - - - name - self - type - DetectedEvent - - - returnType - any - tooltip - Gets the owner of the detected object - - - getName - - - parameters - - - name - self - type - DetectedEvent - - - returnType - any - tooltip - Gets the name of the detected object - - - getFace - - - parameters - - - name - self - type - DetectedEvent - - - returnType - any - tooltip - Gets the face number of the detected collision/touch - - - getLinkNumber - - - parameters - - - name - self - type - DetectedEvent - - - returnType - any - tooltip - Gets the link number of the detected object - - - getKey - - - parameters - - - name - self - type - DetectedEvent - - - returnType - any - tooltip - Gets the key/UUID of the detected object - - - new - - - parameters - - - name - self - type - DetectedEvent - - - name - index - type - number - - - name - canAdjustDamage - type - boolean - - - returnType - DetectedEvent - tooltip - Creates a new DetectedEvent instance - - - - tooltip - DetectedEvent class for handling multi-event handlers like touch, collision, sensor events - - LLEvents - - properties - - _handlers - { [string]: { EventHandler } } - - methods - - on - - - parameters - - - name - self - type - LLEvents - - - name - event_name - type - string - - - name - handler - type - EventHandler - - - returnType - EventHandler - tooltip - Registers a persistent event handler for the specified event - - - once - - - parameters - - - name - self - type - LLEvents - - - name - event_name - type - string - - - name - handler - type - EventHandler - - - returnType - EventHandler - tooltip - Registers a one-time event handler that will be automatically removed after first execution - - - off - - - parameters - - - name - self - type - LLEvents - - - name - event_name - type - string - - - name - handler - type - EventHandler - optional - 1 - - - returnType - boolean - tooltip - Removes an event handler and returns true if successful - - - listeners - - - parameters - - - name - self - type - LLEvents - - - name - event_name - type - string - - - returnType - { EventHandler } - tooltip - Returns a copy of all handlers registered for the specified event - - - eventNames - - - parameters - - - name - self - type - LLEvents - - - returnType - { string } - tooltip - Returns an array of all event names that have registered handlers - - - - tooltip - LLEvents interface providing dynamic event handler management for Second Life scripts - - LLTimers - - properties - - _timers - { _LLTimerData } - - methods - - on - - - parameters - - - name - self - type - LLTimers - - - name - seconds - type - number - - - name - handler - type - EventHandler - - - returnType - EventHandler - tooltip - Registers a repeating timer that will call the handler every specified number of seconds - - - once - - - parameters - - - name - self - type - LLTimers - - - name - seconds - type - number - - - name - handler - type - EventHandler - - - returnType - EventHandler - tooltip - Registers a one-shot timer that will call the handler once after the specified delay - - - off - - - parameters - - - name - self - type - LLTimers - - - name - handler - type - EventHandler - optional - 1 - - - returnType - boolean - tooltip - Removes a timer handler and returns true if successful - - - - tooltip - LLTimers interface providing timer management for Second Life scripts - - _LLTimerData - - properties - - handler - EventHandler - nextRun - number - interval - number | nil - - tooltip - Internal timer data structure containing handler function and timing information - - - modules - - bit32 - - methods - - arshift - - - parameters - - - name - n - type - integer - - - name - i - type - integer - - - returnType - integer - tooltip - Arithmetic right shift for integers - - - parameters - - - name - n - type - integer | number - - - name - i - type - integer | number - - - returnType - number - tooltip - Arithmetic right shift for mixed types - - - band - - - parameters - - - name - args - type - integer - variadic - 1 - - - returnType - integer - tooltip - Bitwise AND for integers - - - parameters - - - name - args - type - integer | number - variadic - 1 - - - returnType - number - tooltip - Bitwise AND for mixed types - - - bnot - - - parameters - - - name - n - type - integer - - - returnType - integer - tooltip - Bitwise NOT for integers - - - parameters - - - name - n - type - integer | number - - - returnType - number - tooltip - Bitwise NOT for mixed types - - - bor - - - parameters - - - name - args - type - integer - variadic - 1 - - - returnType - integer - tooltip - Bitwise OR for integers - - - parameters - - - name - args - type - integer | number - variadic - 1 - - - returnType - number - tooltip - Bitwise OR for mixed types - - - bxor - - - parameters - - - name - args - type - integer - variadic - 1 - - - returnType - integer - tooltip - Bitwise XOR for integers - - - parameters - - - name - args - type - integer | number - variadic - 1 - - - returnType - number - tooltip - Bitwise XOR for mixed types - - - btest - - - parameters - - - name - args - type - integer | number - variadic - 1 - - - returnType - boolean - tooltip - Test if bitwise AND is non-zero - - - extract - - - parameters - - - name - n - type - integer - - - name - f - type - integer - - - name - w - type - integer - - - returnType - integer - tooltip - Extract bits from integer - - - parameters - - - name - n - type - integer | number - - - name - f - type - integer | number - - - name - w - type - integer | number - - - returnType - number - tooltip - Extract bits from mixed types - - - lrotate - - - parameters - - - name - n - type - integer - - - name - i - type - integer - - - returnType - integer - tooltip - Left rotate for integers - - - parameters - - - name - n - type - integer | number - - - name - i - type - integer | number - - - returnType - number - tooltip - Left rotate for mixed types - - - lshift - - - parameters - - - name - n - type - integer - - - name - i - type - integer - - - returnType - integer - tooltip - Left shift for integers - - - parameters - - - name - n - type - integer | number - - - name - i - type - integer | number - - - returnType - number - tooltip - Left shift for mixed types - - - replace - - - parameters - - - name - n - type - integer - - - name - r - type - integer - - - name - f - type - integer - - - name - w - type - integer - optional - 1 - - - returnType - integer - tooltip - Replace bits in integer - - - parameters - - - name - n - type - integer | number - - - name - r - type - integer | number - - - name - f - type - integer | number - - - name - w - type - integer | number - optional - 1 - - - returnType - number - tooltip - Replace bits in mixed types - - - rrotate - - - parameters - - - name - n - type - integer - - - name - i - type - integer - - - returnType - integer - tooltip - Right rotate for integers - - - parameters - - - name - n - type - integer | number - - - name - i - type - integer | number - - - returnType - number - tooltip - Right rotate for mixed types - - - rshift - - - parameters - - - name - n - type - integer - - - name - i - type - integer - - - returnType - integer - tooltip - Right shift for integers - - - parameters - - - name - n - type - integer | number - - - name - i - type - integer | number - - - returnType - number - tooltip - Right shift for mixed types - - - countlz - - - parameters - - - name - n - type - integer - - - returnType - integer - tooltip - Count leading zeros for integers - - - parameters - - - name - n - type - number - - - returnType - integer - tooltip - Count leading zeros for numbers - - - countrz - - - parameters - - - name - n - type - integer - - - returnType - integer - tooltip - Count trailing zeros for integers - - - parameters - - - name - n - type - number - - - returnType - integer - tooltip - Count trailing zeros for numbers - - - byteswap - - - parameters - - - name - n - type - integer - - - returnType - integer - tooltip - Byte swap for integers - - - parameters - - - name - n - type - number - - - returnType - integer - tooltip - Byte swap for numbers - - - - tooltip - Bitwise operations library providing bit manipulation functions - - vector - - properties - - one - vector - zero - vector - - methods - - abs - - - parameters - - - name - vec - type - vector - - - returnType - vector - tooltip - Applies math.abs to every component of the input vector - - - angle - - - parameters - - - name - vec1 - type - vector - - - name - vec2 - type - vector - - - name - axis - type - vector - optional - 1 - - - returnType - number - tooltip - Computes the angle between two vectors in radians. The axis, if specified, is used to determine the sign of the angle - - - ceil - - - parameters - - - name - vec - type - vector - - - returnType - vector - tooltip - Applies math.ceil to every component of the input vector - - - clamp - - - parameters - - - name - vec - type - vector - - - name - min - type - vector - - - name - max - type - vector - - - returnType - vector - tooltip - Applies math.clamp to every component of the input vector - - - create - - - parameters - - - name - x - type - number | integer - - - name - y - type - number | integer - - - name - z - type - number | integer - - - returnType - vector - tooltip - Creates a new vector with the given component values - - - cross - - - parameters - - - name - vec1 - type - vector - - - name - vec2 - type - vector - - - returnType - vector - tooltip - Computes the cross product of two vectors - - - dot - - - parameters - - - name - vec1 - type - vector - - - name - vec2 - type - vector - - - returnType - number - tooltip - Computes the dot product of two vectors - - - floor - - - parameters - - - name - vec - type - vector - - - returnType - vector - tooltip - Applies math.floor to every component of the input vector - - - magnitude - - - parameters - - - name - vec - type - vector - - - returnType - number - tooltip - Calculates the magnitude of a given vector - - - max - - - parameters - - - name - args - type - vector - variadic - 1 - - - returnType - vector - tooltip - Applies math.max to the corresponding components of the input vectors - - - min - - - parameters - - - name - args - type - vector - variadic - 1 - - - returnType - vector - tooltip - Applies math.min to the corresponding components of the input vectors - - - normalize - - - parameters - - - name - vec - type - vector - - - returnType - vector - tooltip - Computes the normalized version (unit vector) of a given vector - - - sign - - - parameters - - - name - vec - type - vector - - - returnType - vector - tooltip - Applies math.sign to every component of the input vector - - - - tooltip - Vector utility functions for operations on vectors - - lljson - - properties - - empty_array - lljson_constant - null - lljson_constant - - methods - - decode - - - parameters - - - name - json - type - string - - - returnType - string | number | integer | vector | uuid | quaternion | boolean | table | nil - tooltip - Decode JSON string to Lua value - - - encode - - - parameters - - - name - value - type - string | number | integer | vector | uuid | quaternion | boolean | table | nil - - - returnType - string - tooltip - Encode Lua value as JSON - - - - tooltip - JSON encoding and decoding module with constants for null and empty arrays - - llbase64 - - methods - - decode - - - parameters - - - name - base64 - type - string - - - returnType - string - tooltip - Decode a base64 string to a string - - - parameters - - - name - base64 - type - string - - - name - asBuffer - type - true - - - returnType - buffer - tooltip - Decode a base64 string to a buffer - - - parameters - - - name - base64 - type - string - - - name - asBuffer - type - false - - - returnType - string - tooltip - Decode a base64 string to a string - - - encode - - - parameters - - - name - value - type - string | buffer - - - returnType - string - tooltip - Encode a string or buffer to base64 - - - - tooltip - Base64 encoding and decoding module for strings and buffers - - - - diff --git a/indra/newview/app_settings/types_lua_default.xml b/indra/newview/app_settings/types_lua_default.xml new file mode 100644 index 0000000000..5881df5ba5 --- /dev/null +++ b/indra/newview/app_settings/types_lua_default.xml @@ -0,0 +1,2488 @@ + + + + $schema + ./sl-lua-defs.schema.json + aliases + + list + + aliasTypes + + string + number + integer + vector + uuid + quaternion + boolean + + aliasIndex + number + tooltip + A table with numeric indices containing various value types + + table + + aliasTypes + + any + + aliasIndex + any + tooltip + A table with any type of indices and values + + numeric + + aliasTypes + + number + boolean + integer + + tooltip + A union type representing numeric values + + lljson_constant + + aliasTypes + + number + + tooltip + A constant value used in lljson module + + uuid_like + + aliasTypes + + string + uuid + + tooltip + A union type representing uuid values + + EventHandler + + aliasTypes + + (...any) -> () + + tooltip + A function type for event handlers that accepts variable arguments + + + functions + + toquaternion + + parameters + + + name + str + type + string + + + returnType + quaternion | nil + tooltip + Creates a quaternion from a string argument in format `<1,1,1,1>`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to the closing `>` are interpreted as valid. So `<1,1,1,1` and `<1,1,1,1spoon` are both cast to `<1,1,1,1>`. When testing if a string is a quaternion or a vector, you should test with `toquaternion` first. + + tovector + + parameters + + + name + str + type + string + + + returnType + vector | nil + tooltip + Creates a vector from a string argument in format `<1,1,1>`. Invalid strings will return `nil`. Due to an old error from LSL, strings that match up to the closing `>` are interpreted as valid. So `<1,1,1`, `<1,1,1,1` and `<1,1,1spoon` are all cast to `<1,1,1>`. When testing if a string is a quaternion or a vector, you should test with `toquaternion` first. + + integer + + parameters + + + name + value + type + string | number + + + returnType + integer + tooltip + Creates an integer value from argument + + uuid + + parameters + + + name + str + type + string + + + returnType + uuid + tooltip + Creates a uuid from a string argument + + vector + + parameters + + + name + x + type + number + + + name + y + type + number + + + name + z + type + number + + + returnType + vector + tooltip + Creates a vector. + + quaternion + + parameters + + + name + x + type + number + + + name + y + type + number + + + name + z + type + number + + + name + s + type + number + + + returnType + quaternion + tooltip + Creates a quaternion rotation. + + + classes + + integer + + methods + + __add + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Addition operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Addition operator for integer and number + + + __sub + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Subtraction operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Subtraction operator for integer and number + + + __mul + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Multiplication operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Multiplication operator for integer and number + + + __div + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Division operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Division operator for integer and number + + + __unm + + + parameters + + + name + self + type + integer + + + returnType + integer + tooltip + Unary minus operator + + + __mod + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Modulo operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Modulo operator for integer and number + + + __pow + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Power operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + number + tooltip + Power operator for integer and number + + + __idiv + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + integer + tooltip + Integer division operator for integers + + + parameters + + + name + self + type + integer + + + name + other + type + number + + + returnType + integer + tooltip + Integer division operator for integer and number + + + __eq + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + boolean + tooltip + Equality comparison operator + + + __lt + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + boolean + tooltip + Less than comparison operator + + + __le + + + parameters + + + name + self + type + integer + + + name + other + type + integer + + + returnType + boolean + tooltip + Less than or equal comparison operator + + + + tooltip + Integer class with arithmetic and comparison operators + + uuid + + methods + + __tostring + + + parameters + + + name + self + type + uuid + + + returnType + string + tooltip + Convert UUID to string representation + + + + properties + + istruthy + boolean + + tooltip + UUID class with string conversion and truthiness property + + quaternion + + properties + + x + number + y + number + z + number + s + number + + methods + + __mul + + + parameters + + + name + self + type + quaternion + + + name + other + type + vector + + + returnType + vector + tooltip + Multiply vector by quaternion + + + parameters + + + name + self + type + quaternion + + + name + other + type + quaternion + + + returnType + quaternion + tooltip + Multiply quaternion by quaternion + + + + tooltip + Quaternion class representing a rotation with x, y, z, s components + + vector + + properties + + x + number + y + number + z + number + + methods + + __mul + + + parameters + + + name + self + type + vector + + + name + other + type + vector + + + returnType + vector + tooltip + Multiply vector by vector + + + parameters + + + name + self + type + vector + + + name + other + type + quaternion + + + returnType + vector + tooltip + Multiply vector by quaternion + + + parameters + + + name + self + type + vector + + + name + other + type + number + + + returnType + vector + tooltip + Multiply vector by number + + + __div + + + parameters + + + name + self + type + vector + + + name + other + type + vector + + + returnType + vector + tooltip + Divide vector by vector + + + parameters + + + name + self + type + vector + + + name + other + type + quaternion + + + returnType + vector + tooltip + Divide vector by quaternion + + + parameters + + + name + self + type + vector + + + name + other + type + number + + + returnType + vector + tooltip + Divide vector by number + + + __idiv + + + parameters + + + name + self + type + vector + + + name + other + type + vector + + + returnType + vector + tooltip + Floor divide vector by vector + + + parameters + + + name + self + type + vector + + + name + other + type + quaternion + + + returnType + vector + tooltip + Floor divide vector by quaternion + + + parameters + + + name + self + type + vector + + + name + other + type + number + + + returnType + vector + tooltip + Floor divide vector by number + + + __add + + + parameters + + + name + self + type + vector + + + name + other + type + vector + + + returnType + vector + tooltip + Add two vectors + + + __sub + + + parameters + + + name + self + type + vector + + + name + other + type + vector + + + returnType + vector + tooltip + Subtract vector from vector + + + __unm + + + parameters + + + name + self + type + vector + + + returnType + vector + tooltip + Negate a vector + + + + tooltip + Vector class representing a 3D vector with x, y, z components + + DetectedEvent + + properties + + index + number + valid + boolean + canAdjustDamage + boolean + + methods + + adjustDamage + + + parameters + + + name + self + type + DetectedEvent + + + name + damage + type + number + + + returnType + () + tooltip + Adjusts the damage amount for this detected event + + + getOwner + + + parameters + + + name + self + type + DetectedEvent + + + returnType + any + tooltip + Gets the owner of the detected object + + + getName + + + parameters + + + name + self + type + DetectedEvent + + + returnType + any + tooltip + Gets the name of the detected object + + + getFace + + + parameters + + + name + self + type + DetectedEvent + + + returnType + any + tooltip + Gets the face number of the detected collision/touch + + + getLinkNumber + + + parameters + + + name + self + type + DetectedEvent + + + returnType + any + tooltip + Gets the link number of the detected object + + + getKey + + + parameters + + + name + self + type + DetectedEvent + + + returnType + any + tooltip + Gets the key/UUID of the detected object + + + new + + + parameters + + + name + self + type + DetectedEvent + + + name + index + type + number + + + name + canAdjustDamage + type + boolean + + + returnType + DetectedEvent + tooltip + Creates a new DetectedEvent instance + + + + tooltip + DetectedEvent class for handling multi-event handlers like touch, collision, sensor events + + LLEvents + + properties + + _handlers + { [string]: { EventHandler } } + + methods + + on + + + parameters + + + name + self + type + LLEvents + + + name + event_name + type + string + + + name + handler + type + EventHandler + + + returnType + EventHandler + tooltip + Registers a persistent event handler for the specified event + + + once + + + parameters + + + name + self + type + LLEvents + + + name + event_name + type + string + + + name + handler + type + EventHandler + + + returnType + EventHandler + tooltip + Registers a one-time event handler that will be automatically removed after first execution + + + off + + + parameters + + + name + self + type + LLEvents + + + name + event_name + type + string + + + name + handler + type + EventHandler + optional + 1 + + + returnType + boolean + tooltip + Removes an event handler and returns true if successful + + + listeners + + + parameters + + + name + self + type + LLEvents + + + name + event_name + type + string + + + returnType + { EventHandler } + tooltip + Returns a copy of all handlers registered for the specified event + + + eventNames + + + parameters + + + name + self + type + LLEvents + + + returnType + { string } + tooltip + Returns an array of all event names that have registered handlers + + + + tooltip + LLEvents interface providing dynamic event handler management for Second Life scripts + + LLTimers + + properties + + _timers + { _LLTimerData } + + methods + + on + + + parameters + + + name + self + type + LLTimers + + + name + seconds + type + number + + + name + handler + type + EventHandler + + + returnType + EventHandler + tooltip + Registers a repeating timer that will call the handler every specified number of seconds + + + once + + + parameters + + + name + self + type + LLTimers + + + name + seconds + type + number + + + name + handler + type + EventHandler + + + returnType + EventHandler + tooltip + Registers a one-shot timer that will call the handler once after the specified delay + + + off + + + parameters + + + name + self + type + LLTimers + + + name + handler + type + EventHandler + optional + 1 + + + returnType + boolean + tooltip + Removes a timer handler and returns true if successful + + + + tooltip + LLTimers interface providing timer management for Second Life scripts + + _LLTimerData + + properties + + handler + EventHandler + nextRun + number + interval + number | nil + + tooltip + Internal timer data structure containing handler function and timing information + + + modules + + bit32 + + methods + + arshift + + + parameters + + + name + n + type + integer + + + name + i + type + integer + + + returnType + integer + tooltip + Arithmetic right shift for integers + + + parameters + + + name + n + type + integer | number + + + name + i + type + integer | number + + + returnType + number + tooltip + Arithmetic right shift for mixed types + + + band + + + parameters + + + name + args + type + integer + variadic + 1 + + + returnType + integer + tooltip + Bitwise AND for integers + + + parameters + + + name + args + type + integer | number + variadic + 1 + + + returnType + number + tooltip + Bitwise AND for mixed types + + + bnot + + + parameters + + + name + n + type + integer + + + returnType + integer + tooltip + Bitwise NOT for integers + + + parameters + + + name + n + type + integer | number + + + returnType + number + tooltip + Bitwise NOT for mixed types + + + bor + + + parameters + + + name + args + type + integer + variadic + 1 + + + returnType + integer + tooltip + Bitwise OR for integers + + + parameters + + + name + args + type + integer | number + variadic + 1 + + + returnType + number + tooltip + Bitwise OR for mixed types + + + bxor + + + parameters + + + name + args + type + integer + variadic + 1 + + + returnType + integer + tooltip + Bitwise XOR for integers + + + parameters + + + name + args + type + integer | number + variadic + 1 + + + returnType + number + tooltip + Bitwise XOR for mixed types + + + btest + + + parameters + + + name + args + type + integer | number + variadic + 1 + + + returnType + boolean + tooltip + Test if bitwise AND is non-zero + + + extract + + + parameters + + + name + n + type + integer + + + name + f + type + integer + + + name + w + type + integer + + + returnType + integer + tooltip + Extract bits from integer + + + parameters + + + name + n + type + integer | number + + + name + f + type + integer | number + + + name + w + type + integer | number + + + returnType + number + tooltip + Extract bits from mixed types + + + lrotate + + + parameters + + + name + n + type + integer + + + name + i + type + integer + + + returnType + integer + tooltip + Left rotate for integers + + + parameters + + + name + n + type + integer | number + + + name + i + type + integer | number + + + returnType + number + tooltip + Left rotate for mixed types + + + lshift + + + parameters + + + name + n + type + integer + + + name + i + type + integer + + + returnType + integer + tooltip + Left shift for integers + + + parameters + + + name + n + type + integer | number + + + name + i + type + integer | number + + + returnType + number + tooltip + Left shift for mixed types + + + replace + + + parameters + + + name + n + type + integer + + + name + r + type + integer + + + name + f + type + integer + + + name + w + type + integer + optional + 1 + + + returnType + integer + tooltip + Replace bits in integer + + + parameters + + + name + n + type + integer | number + + + name + r + type + integer | number + + + name + f + type + integer | number + + + name + w + type + integer | number + optional + 1 + + + returnType + number + tooltip + Replace bits in mixed types + + + rrotate + + + parameters + + + name + n + type + integer + + + name + i + type + integer + + + returnType + integer + tooltip + Right rotate for integers + + + parameters + + + name + n + type + integer | number + + + name + i + type + integer | number + + + returnType + number + tooltip + Right rotate for mixed types + + + rshift + + + parameters + + + name + n + type + integer + + + name + i + type + integer + + + returnType + integer + tooltip + Right shift for integers + + + parameters + + + name + n + type + integer | number + + + name + i + type + integer | number + + + returnType + number + tooltip + Right shift for mixed types + + + countlz + + + parameters + + + name + n + type + integer + + + returnType + integer + tooltip + Count leading zeros for integers + + + parameters + + + name + n + type + number + + + returnType + integer + tooltip + Count leading zeros for numbers + + + countrz + + + parameters + + + name + n + type + integer + + + returnType + integer + tooltip + Count trailing zeros for integers + + + parameters + + + name + n + type + number + + + returnType + integer + tooltip + Count trailing zeros for numbers + + + byteswap + + + parameters + + + name + n + type + integer + + + returnType + integer + tooltip + Byte swap for integers + + + parameters + + + name + n + type + number + + + returnType + integer + tooltip + Byte swap for numbers + + + + tooltip + Bitwise operations library providing bit manipulation functions + + vector + + properties + + one + vector + zero + vector + + methods + + abs + + + parameters + + + name + vec + type + vector + + + returnType + vector + tooltip + Applies math.abs to every component of the input vector + + + angle + + + parameters + + + name + vec1 + type + vector + + + name + vec2 + type + vector + + + name + axis + type + vector + optional + 1 + + + returnType + number + tooltip + Computes the angle between two vectors in radians. The axis, if specified, is used to determine the sign of the angle + + + ceil + + + parameters + + + name + vec + type + vector + + + returnType + vector + tooltip + Applies math.ceil to every component of the input vector + + + clamp + + + parameters + + + name + vec + type + vector + + + name + min + type + vector + + + name + max + type + vector + + + returnType + vector + tooltip + Applies math.clamp to every component of the input vector + + + create + + + parameters + + + name + x + type + number | integer + + + name + y + type + number | integer + + + name + z + type + number | integer + + + returnType + vector + tooltip + Creates a new vector with the given component values + + + cross + + + parameters + + + name + vec1 + type + vector + + + name + vec2 + type + vector + + + returnType + vector + tooltip + Computes the cross product of two vectors + + + dot + + + parameters + + + name + vec1 + type + vector + + + name + vec2 + type + vector + + + returnType + number + tooltip + Computes the dot product of two vectors + + + floor + + + parameters + + + name + vec + type + vector + + + returnType + vector + tooltip + Applies math.floor to every component of the input vector + + + magnitude + + + parameters + + + name + vec + type + vector + + + returnType + number + tooltip + Calculates the magnitude of a given vector + + + max + + + parameters + + + name + args + type + vector + variadic + 1 + + + returnType + vector + tooltip + Applies math.max to the corresponding components of the input vectors + + + min + + + parameters + + + name + args + type + vector + variadic + 1 + + + returnType + vector + tooltip + Applies math.min to the corresponding components of the input vectors + + + normalize + + + parameters + + + name + vec + type + vector + + + returnType + vector + tooltip + Computes the normalized version (unit vector) of a given vector + + + sign + + + parameters + + + name + vec + type + vector + + + returnType + vector + tooltip + Applies math.sign to every component of the input vector + + + + tooltip + Vector utility functions for operations on vectors + + lljson + + properties + + empty_array + lljson_constant + null + lljson_constant + + methods + + decode + + + parameters + + + name + json + type + string + + + returnType + string | number | integer | vector | uuid | quaternion | boolean | table | nil + tooltip + Decode JSON string to Lua value + + + encode + + + parameters + + + name + value + type + string | number | integer | vector | uuid | quaternion | boolean | table | nil + + + returnType + string + tooltip + Encode Lua value as JSON + + + + tooltip + JSON encoding and decoding module with constants for null and empty arrays + + llbase64 + + methods + + decode + + + parameters + + + name + base64 + type + string + + + returnType + string + tooltip + Decode a base64 string to a string + + + parameters + + + name + base64 + type + string + + + name + asBuffer + type + true + + + returnType + buffer + tooltip + Decode a base64 string to a buffer + + + parameters + + + name + base64 + type + string + + + name + asBuffer + type + false + + + returnType + string + tooltip + Decode a base64 string to a string + + + encode + + + parameters + + + name + value + type + string | buffer + + + returnType + string + tooltip + Encode a string or buffer to base64 + + + + tooltip + Base64 encoding and decoding module for strings and buffers + + + + diff --git a/indra/newview/llscripteditorws.cpp b/indra/newview/llscripteditorws.cpp index cecac23383..814157e86c 100644 --- a/indra/newview/llscripteditorws.cpp +++ b/indra/newview/llscripteditorws.cpp @@ -334,12 +334,12 @@ LLSD LLScriptEditorWSServer::handleSyntaxRequest(const LLSD& params) const if (category == "defs.lua") { response["defs"] = LLSyntaxLua::instance().getTypesXML(); - response["success"] = true; + response["success"] = response["defs"].isDefined(); } else if (category == "defs.lsl") { response["defs"] = LLSyntaxIdLSL::instance().getKeywordsXML(); - response["success"] = true; + response["success"] = response["defs"].isDefined(); } else { diff --git a/indra/newview/llsyntaxid.cpp b/indra/newview/llsyntaxid.cpp index a891bf945e..bca3f0abc8 100644 --- a/indra/newview/llsyntaxid.cpp +++ b/indra/newview/llsyntaxid.cpp @@ -364,7 +364,7 @@ void LLSyntaxLua::loadDefaultKeywordsIntoLLSD() void LLSyntaxLua::loadLuaTypesIntoLLSD() { - std::string fullFileSpec = gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "types_lua_default.llsd"); + std::string fullFileSpec = gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "types_lua_default.xml"); llifstream file(fullFileSpec.c_str()); if (file.good()) -- cgit v1.3