Difference between revisions of "LSL Operators"

From Second Life Wiki
Jump to navigation Jump to search
m (fixed some errors in the bit manipulation examples)
(+ operator as list concatenator added)
Line 20: Line 20:
| + || Addition or joining Strings || two = 1+1;
| + || Addition or joining Strings || two = 1+1;
text = "Hello" + "World";
text = "Hello" + "World";
|-
| + || Concatenation or joining Lists || myList = [1, 2, 3] + [4, 5];
newList = oldList + addList;
|-
|-
| << >>  || Left Shift, Right Shift  || eight = 4 << 1;
| << >>  || Left Shift, Right Shift  || eight = 4 << 1;

Revision as of 06:00, 3 August 2007

Operators are used to cause an operation (or mathematical action) to be performed on two operands. The easy and common example is 1 + 2 where 1 and 2 are operands, and the + is the operator.

This concept can be extended much further with LSL since operands can be variables with the special case of the assignment operators requiring that the left hand side be a variable.

Operator Description Usage Example
() [] . Parenthesis, Brackets, and Dot do this second (do this first)
(type) Typecasting message = "The result is:" + (string) result;
! ~ ++ -- NOT, One's Complement, Increment, Decrement counter++;
* / % Multiply, Divide, Modulus rollover = (count + 1)%5;
- Subtraction one = 3 - 2;
+ Addition or joining Strings two = 1+1;

text = "Hello" + "World";

+ Concatenation or joining Lists myList = [1, 2, 3] + [4, 5];

newList = oldList + addList;

<< >> Left Shift, Right Shift eight = 4 << 1;
< <= > >= Less Than, Less Than Or Equal To,

Greater Than, Greater Than or Equal To

isFalse = (6 <= 4);
==  != Comparison Equal, Comparison Not Equal isFalse = ("this" == "that");
& Bitwise AND zero = 4 & 2;

four = 4 & 4;

^ Bitwise XOR zero = 4 ^ 4;

six = 4 ^ 2;

| Bitwise OR four = 4 | 4;

six = 4 | 2;

&& Comparison AND isFalse = (FALSE && TRUE);
|| Comparison OR isTrue = (FALSE || TRUE);
= += -= *= /= %= Assignment four = 4;