diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-11-05 08:11:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-05 08:11:31 +0100 |
commit | a282e67b2420cfc98d808febf3aec6fc6370c324 (patch) | |
tree | 4f3aee72fdd35378653974af0538f9d68839ee1f | |
parent | 4c63772f549bd6e04261720d105facb5996e9dbf (diff) | |
parent | 636ebdf819df443210957c5ded24be990534af66 (diff) |
Merge pull request #23422 from santouits/docs-expression
Docs: Expression class docs
-rw-r--r-- | doc/classes/Expression.xml | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/doc/classes/Expression.xml b/doc/classes/Expression.xml index d5b831a61a..c5f71fe55e 100644 --- a/doc/classes/Expression.xml +++ b/doc/classes/Expression.xml @@ -1,8 +1,27 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Expression" inherits="Reference" category="Core" version="3.1"> <brief_description> + A class that stores an expression you can execute. </brief_description> <description> + 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 [code]sqrt(pow(3,2) + pow(4,2))[/code]. + In the following example we use a [LineEdit] node to write our expression and show the result. + [codeblock] + 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(get_error_text()) + return + var result = expression.execute([], null, true) + if not expression.has_execute_failed(): + $LineEdit.text = str(result) + [/codeblock] </description> <tutorials> </tutorials> @@ -19,18 +38,21 @@ <argument index="2" name="show_error" type="bool" default="true"> </argument> <description> + Executes the expression that was previously parsed by [method parse] and returns the result. Before you use the returned object, you should check if the method failed by calling [method has_execute_failed]. </description> </method> <method name="get_error_text" qualifiers="const"> <return type="String"> </return> <description> + Returns the error text if [method parse] has failed. </description> </method> <method name="has_execute_failed" qualifiers="const"> <return type="bool"> </return> <description> + Returns [code]true[/code] if [method execute] has failed. </description> </method> <method name="parse"> @@ -41,6 +63,7 @@ <argument index="1" name="input_names" type="PoolStringArray" default="PoolStringArray( )"> </argument> <description> + Parses the expression and returns a [enum @GlobalScope.Error]. </description> </method> </methods> |