Docs Demo Source

Operator Precedence Table

YASL Operators have the following precedence (from tightest bound to loosest):

Precedence Operators Description Associativity
1 ()
[]
.
->
Function Calls
Indexing
Member Access
Method Call
Left
2 ** Exponentiation Right
3 +
-
len
!
^
Unary Plus
Unary Minus
Length
Logical Negation
Bitwise Negation
Right
4 *
/
//
%
Multiplication
Float Division
Integer Division
Modulus
Left
5 +
-
Addition
Subtraction
Left
6 <<
>>
Bitshift Left
Bitshift Right
Left
7 &
&^
Bitwise And
Bitwise And-Not
Left
8 ^ Bitwise Xor Left
9 | Bitwise Or Left
10 ~ Concatenation Right
11 <
<=
>
>=
Comparison Operators Left
12 ==
!=
===
!==
Comparison Operators Left
13 && Logical And Right
14 || Logical Or Right
15 ?? Undef Coalescing Operator Right
16 ? : Ternary Operator Right
17 =
**=
*=
/=
//=
%=
+=
-=
>>=
<<=
~=
&=
&^=
^=
|=
&&=
||=
??=
Assignment Right