Difference between revisions of "LlList2String"

From Second Life Wiki
Jump to navigation Jump to search
Line 8: Line 8:
|caveats
|caveats
|constants
|constants
|examples=<pre>// Best viewed in Chat History (ctrl-h)
|examples=<pre>//This code demonstrates the differences in typecasting in LSL.
// Best viewed in Chat History (ctrl-h)
default
default
{
{
     state_entry()
     state_entry()
     {
     {
         list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()];
         list my_list = ["a", "0xFF", "0xFF.FF", "1.0e3", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()];
 
        integer i = 0;
             llOwnerSay("string=" + llList2String(my_list,0)
        integer end = llGetListLength(my_list);
                         + "\n  integer=" + (string)llList2Integer(my_list,1)
        for (; i<end; ++i)
                         + "\n  float=" + (string)llList2Float(my_list,2)
        {
                         + "\n  vector=" + (string)llList2Vector(my_list,3)
             llOwnerSay("string=" + llList2String(my_list,i)
                         + "\n  rot=" + (string)llList2Rot(my_list,4)
                         + "\n  integer=" + (string)llList2Integer(my_list,i) + " OR " +(string)((integer)llList2String(my_list,i))
                         + "\n  key=" + (string)llList2Key(my_list,5) );
                         + "\n  float=" + (string)llList2Float(my_list,i) + " OR " +(string)((float)llList2String(my_list,i))
                         + "\n  vector=" + (string)llList2Vector(my_list,i) + " OR " +(string)((vector)llList2String(my_list,i))
                         + "\n  rot=" + (string)llList2Rot(my_list,i) + " OR " +(string)((rotation)llList2String(my_list,i))
                         + "\n  key=" + (string)llList2Key(my_list,i) + " OR " +(string)((key)llList2String(my_list,i)) );
         }
         }
     }
     }

Revision as of 13:02, 3 September 2007

Summary

Function: string llList2String( list src, integer index );

Returns a string that is at index in src.

• list src
• integer index

index supports negative indexes. If the type of the entry at index in src is not a string it is typecast into a string.
If index is out of range it returns a null string.

Specification

Index Positive Negative
First 0 -length
Last length - 1 -1

Indexes

  • Positive indexes count from the beginning, the first item being indexed as 0, the last as (length - 1).
  • Negative indexes count from the far end, the first item being indexed as -length, the last as -1.

Caveats

  • If index is out of bounds the script continues to execute without an error message.
All Issues ~ Search JIRA for related Bugs

Examples

//This code demonstrates the differences in typecasting in LSL.
// Best viewed in Chat History (ctrl-h)
default
{
    state_entry()
    {
        list my_list = ["a", "0xFF", "0xFF.FF", "1.0e3", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()];
        integer i = 0;
        integer end = llGetListLength(my_list);
        for (; i<end; ++i)
        {
            llOwnerSay("string=" + llList2String(my_list,i)
                        + "\n   integer=" + (string)llList2Integer(my_list,i) + " OR " +(string)((integer)llList2String(my_list,i))
                        + "\n   float=" + (string)llList2Float(my_list,i) + " OR " +(string)((float)llList2String(my_list,i))
                        + "\n   vector=" + (string)llList2Vector(my_list,i) + " OR " +(string)((vector)llList2String(my_list,i))
                        + "\n   rot=" + (string)llList2Rot(my_list,i) + " OR " +(string)((rotation)llList2String(my_list,i))
                        + "\n   key=" + (string)llList2Key(my_list,i) + " OR " +(string)((key)llList2String(my_list,i)) );
        }
    }
}

See Also

Articles

•  Negative Index

Deep Notes

Search JIRA for related Issues

Signature

function string llList2String( list src, integer index );