Struct Expression

A class that stores an expression you can execute.

struct Expression ;

An expression can be made of any arithmetic operation, built-in math function call, method call of a passed instance, or built-in type construction call. An example expression text using the built-in math functions could be sqrt(pow(3,2) + pow(4,2)). In the following example we use a LineEdit node to write our expression and show the result.

onready var expression = Expression.new()

func ready(): $LineEdit.connect("text_entered", self, "on_text_entered")

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

Methods

NameDescription
execute Executes the expression that was previously parsed by parse and returns the result. Before you use the returned object, you should check if the method failed by calling hasExecuteFailed. If you defined input variables in parse, you can specify their values in the inputs array, in the same order.
getErrorText Returns the error text if parse has failed.
hasExecuteFailed Returns true if execute has failed.
parse Parses the expression and returns an error code. You can optionally specify names of variables that may appear in the expression with input_names, so that you can bind them when it gets executed.