summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-03-09 22:19:42 +0100
committerRémi Verschelde <rverschelde@gmail.com>2024-03-09 22:19:42 +0100
commitecc4649ea8b535756502e62326086aca69e59bad (patch)
tree3adc3d104fbca745ebe8bea4c8a3d64a88a9f546
parent92343030f3e45d6c61fa577be55917bb4f3989b1 (diff)
parent06df4abcd3386007812b8c5a19f82607fae7c1ef (diff)
downloadredot-engine-ecc4649ea8b535756502e62326086aca69e59bad.tar.gz
Merge pull request #89280 from AThousandShips/arr_order_doc
[Doc] Clarify `bsearch(_custom)` behavior
-rw-r--r--doc/classes/Array.xml6
1 files changed, 6 insertions, 0 deletions
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index 40016f0904..fd5ba57615 100644
--- a/doc/classes/Array.xml
+++ b/doc/classes/Array.xml
@@ -218,6 +218,11 @@
<param index="1" name="before" type="bool" default="true" />
<description>
Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search. Optionally, a [param before] specifier can be passed. If [code]false[/code], the returned index comes after all existing entries of the value in the array.
+ [codeblock]
+ var array = ["a", "b", "c", "c", "d", "e"]
+ print(array.bsearch("c", true)) # Prints 2, at the first matching element.
+ print(array.bsearch("c", false)) # Prints 4, after the last matching element, pointing to "d".
+ [/codeblock]
[b]Note:[/b] Calling [method bsearch] on an unsorted array results in unexpected behavior.
</description>
</method>
@@ -228,6 +233,7 @@
<param index="2" name="before" type="bool" default="true" />
<description>
Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search and a custom comparison method. Optionally, a [param before] specifier can be passed. If [code]false[/code], the returned index comes after all existing entries of the value in the array. The custom method receives two arguments (an element from the array and the value searched for) and must return [code]true[/code] if the first argument is less than the second, and return [code]false[/code] otherwise.
+ [b]Note:[/b] The custom method must accept the two arguments in any order, you cannot rely on that the first argument will always be from the array.
[b]Note:[/b] Calling [method bsearch_custom] on an unsorted array results in unexpected behavior.
</description>
</method>