Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Expression

Hérite de : RefCounted < Object

Une classe qui enregistre une expression que vous pouvez exécuter.

Description

Une expression peut être faite de n'importe quelle opération arithmétique, d'appels de fonctions mathématiques intégrées, d'appels de méthode sur une instance donnée, ou de constructeurs de type intégrés.

Un exemple d'expression utilisant les fonctions mathématiques intégrées serait sqrt(pow(3,2) + pow(4,2)).

Dans l'exemple suivant nous utilisons un nœud LineEdit pour écrire notre expression et afficher le résultat.

var expression = Expression.new()

func _ready():
    $LineEdit.connect("text_entered", self, "_on_text_entered")

func _on_text_entered(command):
    var erreur = expression.parse(command, [])
    if erreur!= OK:
        print(expression.get_error_text())
        return
    var resultat = expression.execute([], null, true)
    if not expression.has_execute_failed():
        $LineEdit.text = str(resultat)

Tutoriels

Méthodes

Variant

execute(inputs: Array = [], base_instance: Object = null, show_error: bool = true, const_calls_only: bool = false)

String

get_error_text() const

bool

has_execute_failed() const

Error

parse(expression: String, input_names: PackedStringArray = PackedStringArray())


Descriptions des méthodes

Variant execute(inputs: Array = [], base_instance: Object = null, show_error: bool = true, const_calls_only: bool = false) 🔗

Exécute l'expression qui a été précédemment parsée par parse() et renvoie le résultat. Avant d'utiliser l'objet renvoyé, vous devez vérifier si la méthode a échoué en appelant has_execute_failed().

Si vous définissez des variables d'entrée dans parse(), vous pouvez spécifier leurs valeurs dans le tableau "inputs", dans le même ordre.


String get_error_text() const 🔗

Renvoie le texte de l'erreur si parse() ou execute() a échoué.


bool has_execute_failed() const 🔗

Renvoie true si execute() a échoué.


Error parse(expression: String, input_names: PackedStringArray = PackedStringArray()) 🔗

Parse l'expression et renvoie un code d'erreur Error.

Vous pouvez en option spécifier des noms de variables qui peuvent apparaître dans l'expression avec input_names, afin que vous puissiez les lier lorsqu'elle est exécutée.