Aller au contenu principal

Opérateurs

Introduction

Le langage Wave propose divers opérateurs permettant d'effectuer des calculs, des jugements logiques, des comparaisons, des opérations binaires, etc. entre les variables.

Ce document explique les principaux opérateurs utilisables dans Wave, classés par type, et fournit des exemples de leur fonctionnement.

Les opérateurs sont répartis dans les catégories suivantes :

  • Opérateurs arithmétiques
  • Opérateurs de comparaison
  • Opérateurs logiques
  • Opérateurs de bits
  • Opérateurs d'affectation
  • Autres opérateurs spéciaux

Opérateurs arithmétiques

Les opérateurs arithmétiques effectuent des opérations mathématiques de base sur les données numériques.

OpérateurDescriptionExemple (a = 10, b = 3)
+Additiona + b13
-Soustractiona - b7
*Multiplicationa * b30
/Divisiona / b3 (division entière)
%Moduloa % b1

Opérateurs de comparaison

Les opérateurs de comparaison renvoient une valeur bool basée sur la comparaison de deux valeurs.

OpérateursDescriptionExemple (a = 10, b = 3)
==Égala == bfalse
!=Différenta != btrue
<Plus petita < bfalse
>Plus granda > btrue
<=Plus petit ou égala <= 10true
>=Plus grand ou égala >= btrue

Opérateurs logiques

Les opérateurs logiques traitent les combinaisons de valeurs bool vraies/faux.

OpérateursNomDescriptionExemple
&&ET logiqueSeulement true lorsque les deux valeurs sont truetrue && falsefalse
\`\OU logiquetrue si l'un des deux est true\`true \
!NON logiqueInverse true à false et false à true!truefalse

Opérateurs de bits

Les opérateurs de bits manipulent les données entières au niveau du bit.

OpérateursNomDescriptionExemple
&ET bit à bit1 lorsque les deux bits sont 1a & b2
\`\OU bit à bit1 si l'un des deux bits est 1b7\`
^XOR bit à bit1 lorsque les deux bits sont différentsa ^ b5
~NON bit à bitInverser les bits~a-7
<<Décalage à gaucheDéplacer les bits à gauchea << 112
>>Décalage à droiteDéplacer les bits à droitea >> 13

Opérateurs d'affectation

Utilisé pour affecter une valeur à une variable. La plupart du temps, il peut être combiné avec des opérateurs arithmétiques pour être condensé.

OpérateursDescriptionExemple (a = 5)
=Affectation de basea = 10
+=Affectation après additiona += 27
-=Affectation après soustractiona -= 14
*=Affectation après multiplicationa *= 315
/=Affectation après divisiona /= 51
%=Affectation du restea %= 41

Autres opérateurs spéciaux

Wave fournit également des opérateurs avec une signification unique ou spéciale.

OpérateursNomDescriptionExemple
??Opérateur de fusion de nullUtilise la valeur de droite si la gauche est nulla ?? bsi a est null alors b
?:Opérateur conditionnel (opérateur ternaire)Sélectionne une valeur selon une conditioncondition ? valeur vrai : valeur fausse
inVérifie l'inclusionVérifie si une valeur est incluse dans une collection"a" dans liste
isOpérateur de comparaison de typeVérifie le type d'une valeurx est i32
!&NANDOpération logique NANDOpération logique avancée
\`!\NOROpération logique NOROpération logique avancée
~^XNOROpération logique XNOROpération logique avancée

Résumé

Wave fournit une variété d'opérateurs allant des opérations mathématiques aux évaluations logiques, en passant par les manipulations de bits et la branche conditionnelle. Ces opérateurs interagissent avec des variables ou formulent des conditions, et sont des outils essentiels pour des calculs complexes ou le contrôle de flux.

La priorité et la direction d'association de chaque opérateur seront abordées dans la section "Priorité et ordre d'évaluation" plus tard.