Difference between revisions of "LlList2Key"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
m (<lsl> tag to <source>) |
|||
(13 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LSL_Function | ||
|inject-2={{LSL_Function/list/element|src|index|key|return={{HoverText|null string|null string: ""}}}} | |||
|func_id=189|func_sleep=0.0|func_energy=10.0 | |||
|func=llList2Key|return_type=key|p1_type=list|p1_name=src|p2_type=integer|p2_name=index | |||
|func_footnote= | |||
{{LSL Tip|Please read [[User:Kireji_Haiku/How_to_deal_with_lists_in_LSL|this intro of how to iterate over a list in LSL]].}} | |||
|func_desc | |||
|return_text=that is at {{LSLP|index}} in {{LSLP|src}}. | |||
|spec | |||
|caveats | |||
|constants | |||
|examples= | |||
<source lang="lsl2"> | |||
// Best viewed in Chat History (ctrl-h) | |||
default | |||
{ | |||
state_entry() | |||
{ | |||
list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; | |||
integer i; | |||
for (i=0;i<llGetListLength(my_list); ++i) | |||
{ | |||
llOwnerSay("string=" + llList2String(my_list,i) | |||
+ "\n integer=" + (string)llList2Integer(my_list,i) | |||
+ "\n float=" + (string)llList2Float(my_list,i) | |||
+ "\n vector=" + (string)llList2Vector(my_list,i) | |||
+ "\n rot=" + (string)llList2Rot(my_list,i) | |||
+ "\n key=" + (string)llList2Key(my_list,i) ); | |||
} | |||
} | |||
} | |||
</source> | |||
|helpers | |||
|also_functions={{LSL DefineRow||{{LSLG|llGetListEntryType}}|}} | |||
{{LSL DefineRow||{{LSLG|llList2String}}|}} | |||
|also_events | |||
|also_tests | |||
|also_articles | |||
|notes | |||
|permission | |||
|sort=List2Key | |||
|cat1=List | |||
|cat2 | |||
|cat3 | |||
|cat4 | |||
}} |
Latest revision as of 11:44, 22 January 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: key llList2Key( list src, integer index );189 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a key that is at index in src.
• list | src | – | List containing the element of interest. | |
• integer | index | – | Index of the element of interest. |
index supports negative indexes.
If index describes a location not in src then null string is returned.
If the type of the element at index in src is not a key it is typecast to a key. If it cannot be typecast null string is returned.
Important: Please read this intro of how to iterate over a list in LSL. |
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.
Examples
// Best viewed in Chat History (ctrl-h)
default
{
state_entry()
{
list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()];
integer i;
for (i=0;i<llGetListLength(my_list); ++i)
{
llOwnerSay("string=" + llList2String(my_list,i)
+ "\n integer=" + (string)llList2Integer(my_list,i)
+ "\n float=" + (string)llList2Float(my_list,i)
+ "\n vector=" + (string)llList2Vector(my_list,i)
+ "\n rot=" + (string)llList2Rot(my_list,i)
+ "\n key=" + (string)llList2Key(my_list,i) );
}
}
}