Commit Graph

151 Commits

Author SHA1 Message Date
Hugo Locurcio b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
Hugo Locurcio 08541fe11d
Clarify identical `hash()` return values due to collisions 2022-02-12 22:21:37 +01:00
Rémi Verschelde 9912492e93
Merge pull request #56668 from akien-mga/array-slice-nicer-bound-checks 2022-01-18 13:22:35 +01:00
Lisandro Lorea 176a9c738f
Give example of one-liner for Array natural sort
The documentation for the sort method warns the user that it doesn't do natural sort but fails to provide a solution when it's just a one liner thanks to String.naturalnocasecmp_to() and lambda support

This suggests exactly the same algorithm as used by the filesystem dock for file sorting.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2022-01-17 15:11:50 -03:00
Rémi Verschelde c6cefb1b79
`Array`: Relax `slice` bound checks to properly handle negative indices
The same is done for `Vector` (and thus `Packed*Array`).

`begin` and `end` can now take any value and will be clamped to
`[-size(), size()]`. Negative values are a shorthand for indexing the array
from the last element upward.

`end` is given a default `INT_MAX` value (which will be clamped to `size()`)
so that the `end` parameter can be omitted to go from `begin` to the max size
of the array.

This makes `slice` works similarly to numpy's and JavaScript's.
2022-01-10 22:42:03 +01:00
Nathan Franke dd30253cdc
PackedByteArray, Array slice end exclusive, rename subarray to slice 2021-11-26 22:13:12 -06:00
Lightning_A e078f970db Rename `remove()` to `remove_at()` when removing by index 2021-11-23 18:58:57 -07:00
kobewi f529a58f10 Improve sort_custom() example 2021-11-12 23:18:33 +01:00
Aaron Franke 6772ebcea0
Move the docs for constructors and operators out of methods section 2021-10-29 12:34:57 -05:00
Rémi Verschelde 788b3aa27a
doc: Fix style inconsistencies for `[b]Note:[/b]` paragraphs
And fix up formatting not supported by makerst.
2021-10-05 19:13:20 +02:00
Aaron Franke d54f2ad7ca
Don't generate empty doc sections and reduce code duplication 2021-09-20 20:59:33 -05:00
George Marques 455e142d37
Allow comparing equality between builtin types and null 2021-09-17 12:33:52 -03:00
Max Hilbrunner 5b49c6bba4 Fix docs for Array's slice() 2021-09-07 21:40:21 +02:00
Johannes Witt 48a8a59ad7
Specify description of Array.slices end parameter 2021-09-05 21:49:57 +02:00
Max Hilbrunner a2473d7ebe Fix Array class docs after #47406 2021-08-28 22:17:41 +02:00
Hugo Locurcio 60116b17b5
Add an `Array.pop_at()` method to pop an element at an arbitrary index
Negative indices are supported to pop an element relative from the end.
2021-08-27 00:51:17 +02:00
Rémi Verschelde 7adf4cc9b5
doc: Use self-closing tags for `return` and `argument`
For the time being we don't support writing a description for those, preferring
having all details in the method's description.

Using self-closing tags saves half the lines, and prevents contributors from
thinking that they should write the argument or return documentation there.
2021-07-30 15:29:52 +02:00
Nicholas Huelin 9a72b0d3d0 Fix doc typos
This pull request fixes an assortment of typos and improves conciseness in `Animation`, `Area2D`,  `Array`, `ArrayMesh`, `Control`, `Directory`, `EditorPlugin`, `Engine`, and `OS`.
2021-07-23 12:15:15 -04:00
Rémi Verschelde 74b3b0db0e
Merge pull request #47584 from HaSa1002/docs-lang-7 2021-06-11 14:35:45 +02:00
Johannes 23bc697239
Port code examples to C# (V)
Includes:
 * Variant
 * Viewport

and two fixes in Array that were pointed out in #40978
VisualScript classes are skipped on purpose.
That is the final commit of the inital code porting to C#. :)
2021-06-11 13:24:11 +02:00
kobewi 48f0368ddc Improve sort_custom() description 2021-06-03 17:43:39 +02:00
Rémi Verschelde 4219a4cb6f
Fix typos with codespell
Using codespell 2.0.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2021-05-20 12:38:56 +02:00
kobewi a95c953c48 Improve docs for filter map and reduce 2021-05-07 14:09:44 +02:00
Tomasz Chabora c50acc7339 Add filter, map and reduce to Array 2021-05-05 15:54:57 +02:00
Matheus Lima Cunha efd27a63c1 Add fill method to Arrays and PackedArrays 2021-04-21 11:33:53 -03:00
Yuri Sizov c526a1e22d Fix misformatted documentation from #47435, #42827, #46991 2021-04-04 23:25:40 +03:00
Marcel Admiraal 755c70b871 Rename Array.invert() to Array.reverse()
Does the same internally for List and Vector<>, which includes all
PackedArray types.
2021-03-21 10:20:08 +00:00
Rémi Verschelde 4ca1e73ff9
doc: Sync classref with current source
And move GLTF docs to its module folder.
2021-03-18 16:37:43 +01:00
Haoyu Qiu 31243e377f Fixes typo in Array::bsearch_custom doc 2021-02-26 18:01:08 +08:00
kobewi fb83d905da Change sort_custom/bsearch_custom to use Callables 2021-02-04 14:37:52 +01:00
Rémi Verschelde 34eb5638d3
Merge pull request #44624 from Calinou/doc-array-hash
Improve the `Array.hash()` documentation
2021-01-26 15:53:35 +01:00
Hugo Locurcio 7ce3cc0478
Document low performance of `Array.push_front()` and `Array.pop_front()` 2021-01-26 00:02:55 +01:00
Rémi Verschelde 215d18814e
doc: Sync classref with current source 2021-01-04 14:33:44 +01:00
Marcel Admiraal 5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Hugo Locurcio 435848192e
Improve the `Array.hash()` documentation
Co-authored-by: Laguzus <67963093+Laguzus@users.noreply.github.com>
2020-12-23 19:13:10 +01:00
Hugo Locurcio 5325de4e6b
Improve the Dictionary class documentation
- Mention Lua-style syntax.
- Make the code samples self-contained.
- Mention caveat with `const` (also in Array).
- Clarify the description of `size()`.

This closes https://github.com/godotengine/godot-docs/issues/4272.
2020-11-14 22:05:53 +01:00
Rémi Verschelde 9397a5a272
Merge pull request #43437 from akien-mga/doc-operators
doc: Add template to document Variant operators, fixups to #43419
2020-11-10 15:58:36 +01:00
Rémi Verschelde 64e893deac
doc: Sync classref to add operators after #43419 2020-11-10 15:00:50 +01:00
Rémi Verschelde 03ae26bb74
Merge pull request #43398 from KoBeWi/add_an_array_to_another_array_but_with_a_method
Add append_array() method to Array class
2020-11-10 13:53:58 +01:00
Rémi Verschelde 0f249f5c0a
Variant: Sync docs with new constructors, fixups after #43403
Change DocData comparators for MethodDoc and ArgumentDoc to get a better
ordering of constructors.
2020-11-09 23:39:53 +01:00
Tomasz Chabora 9f23a94b8a Add append_array() method to Array class 2020-11-08 21:09:45 +01:00
Rémi Verschelde 424cd00f8b
doc: Sync classref with current source + fixup some bindings
Includes various changes triggered by the refactoring of method bindings.
2020-11-04 15:38:26 +01:00
HaSa1002 c5aded55df Add C# code examples to the docs
Only existing GDScript code examples are converted and added to the
docs.
This is the first batch include classes beginning with A and B.

Included classes:
 * AcceptDialog
 * AESContext
 * Animation
 * AnimationNodeStateMachine
 * AnimationNodeStateMachinePlayback
 * AnimationNodeStateMachineTransition
 * Array
 * ArrayMesh
 * AStar
 * AStar2D
 * Bool
 * Button
2020-09-26 12:29:55 +02:00
Hugo Locurcio 603eddce86
Fix a typo in the Array class documentation
This closes https://github.com/godotengine/godot-docs/issues/4049.
2020-09-21 17:03:14 +02:00
Hugo Locurcio 263f620421
Improve documentation related to Array error handling
This closes https://github.com/godotengine/godot-docs/issues/3834.
2020-09-09 14:57:02 +02:00
Tomasz Chabora 4ff1a34171 Mention that Array.front/back throw error if empty 2020-08-12 17:53:18 +02:00
Aaron Franke 9986439352
Commit other files changed by file_format.sh 2020-07-13 14:14:11 -04:00
Hugo Locurcio 7f01f68226
Document the `in` operator in String, Array and Dictionary classes
This also clarifies the `in` operator behavior in Object.
2020-06-12 19:22:35 +02:00
Hugo Locurcio 675fea1648
Document that Dictionary is always passed as reference
See #38792.
2020-05-16 23:52:40 +02:00
Rémi Verschelde a2d3ba3372 doc: Sync classref with current source
Fix wrong binding after #37111.
2020-03-18 09:14:57 +01:00
Rémi Verschelde 788765709d DocData: Fix serialization of Variant default values
Co-authored-by: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
2020-03-09 10:52:44 +01:00
Hugo Locurcio 8d53562954
doc: Mention concatenation using the `+` operator in Array
This closes https://github.com/godotengine/godot-docs/issues/2452.
2020-02-27 23:34:16 +01:00
Rémi Verschelde a7e1df4b1d doc: Sync classref for Packed{Int,Float}{32,64}Array additions 2020-02-25 22:02:36 +01:00
Rémi Verschelde 048f4f8305 doc: Sync classref with apparent Variant return type changes
Part of those seem bogus, methods like Array.back()/front()
should return a Variant and not void.
2020-02-22 15:16:32 +01:00
Rémi Verschelde 213a85521d doc: Sync classref with current source
Handle removal of Pool*Array types and other recent changes.
2020-02-18 14:02:02 +01:00
Rémi Verschelde 0edcb8ed58
Merge pull request #35809 from clayjohn/DOCS-update-version
Update docs to version 4.0
2020-02-01 19:42:31 +01:00
clayjohn 57e27683ba Update docs to version 4.0 2020-01-31 17:15:41 -08:00
Hugo Locurcio 1de9118c5f
doc: Add an example for `Array.sort()`
This may help people understand the difference between alphabetical
and natural order more quickly.
2020-01-31 21:23:09 +01:00
Rémi Verschelde 2d20fc39aa doc: Drop unused 'category' property from header
We already removed it from the online docs with #35132.

Currently it can only be "Built-In Types" (Variant types) or "Core"
(everything else), which is of limited use.

We might also want to consider dropping it from `ClassDB` altogether
in Godot 4.0.
2020-01-26 16:02:39 +01:00
Michael Alexsander c4745c96d7 Remove unnecessary extra spaces before comments in code examples. 2020-01-23 14:41:49 -03:00
cajallen 05bbbb1225 sort_custom description and example updated 2020-01-10 12:24:49 -06:00
Ryan Roden-Corrent e002044761
Be more specific about array return values.
The prior docs weren't clear if {pop_,}{front,back} would fail or return
`null` on an empty array.
2019-12-22 14:38:10 -05:00
PouleyKetchoupp 52e799b6d4 Code format for true/false/null to make documentation consistent 2019-11-02 12:14:15 +01:00
Rémi Verschelde 4f294b958f doc: Sync classref with current source
Fix a few missing bindings or unspecified argument names and default values.
2019-09-24 11:52:06 +02:00
Cameron Reikes 757c509437 Add array slice method 2019-09-14 13:08:28 -07:00
Hugo Locurcio f7f6115f76
Proofread and improve the whole class reference
- Document a few more properties and methods
- Add more information to many classes
- Fix lots of typos and gramar mistakes
- Use [code] tags for parameters consistently
- Use [b] and [i] tags consistently
- Put "Warning:" and "Note:" on their own line to be more visible,
  and make them always bold
- Tweak formatting in code examples to be more readable
- Use double quotes consistently
- Add more links to third-party technologies
2019-06-27 22:30:19 +02:00
hbina085 d02ecd5a18 updated description of Array.shuffle to properly describe that it uses the same common seed at every runtime, thus being reproducible in general 2019-05-11 18:04:47 -04:00
Rémi Verschelde ab4705a807
Merge pull request #28125 from KoBeWi/code_true_code
Consistently wrap booleans in [code]
2019-04-22 11:59:16 +02:00
Rémi Verschelde 6af69f851a doc: Drop unused <demos> tag 2019-04-19 11:03:46 +02:00
Tomasz Chabora b0846f60c9 Consistently wrap booleans in [code] 2019-04-17 17:13:00 +02:00
Rémi Verschelde 39c868171e doc: Bump version to 3.2 2019-04-01 12:33:56 +02:00
Chris Bradfield 08c3a2241d [DOCS] Minor classref updates. 2019-02-24 20:30:26 -08:00
Rémi Verschelde e588c24168 doc: Fix formatting in code blocks 2018-12-14 09:37:19 +01:00
LikeLakers2 eaac1e3b81 [Docs] Remove double-spaces from descriptions, as well a couple other small fixes 2018-09-23 16:13:30 -04:00
VirtualBox cfb54df986 Fix mistake in Array.xml 2018-09-10 13:42:45 +02:00
Rémi Verschelde f92b87e5f8 DocData: Fix return type listed as "var" instead of "Variant" 2018-08-31 22:41:14 +02:00
Rémi Verschelde 5267099a87 doc: Sync classref with current source 2018-08-29 22:25:11 +02:00
Michael Alexsander Silva Dias 79ab43299a Small doc formating changes and Linux cursor theme note 2018-08-05 04:07:04 -03:00
Rémi Verschelde adb16be6b9 Doc: Add example for array indexing
Supersedes and closes #20180.
2018-07-17 11:47:27 +02:00
Max Hilbrunner 9115d84913
[DOCS] Array sort 2018-05-25 16:55:56 +02:00
Rémi Verschelde cb7fe2c793 doc: Sync classref with current source 2018-04-10 10:12:42 +02:00
Rémi Verschelde 3fa77b3172 doc: Remove status from hardcoded version string
It has no practical use case and just generates noise for each alpha, beta, etc.
2018-02-27 13:40:49 +01:00
Poommetee Ketson eb63f7b071 [DOCS] Sync classref with current source 2018-02-25 15:14:25 +07:00
Rémi Verschelde 37a6ce5a42
Merge pull request #15563 from poke1024/gdscript-shuffle
Add shuffle() method to Array
2018-02-19 21:53:08 +01:00
Rémi Verschelde 3c7a39b40c doc: Update version string in header 2018-02-19 10:46:33 +01:00
Rémi Verschelde d516aab8fa doc: Sync with current source
Also enhance RigidBody docs as per https://github.com/godotengine/godot-docs/pull/1018
and fix the version tag in all files (not really stable yet, but it makes no sense
to hardcode rc3 at this stage).
2018-01-25 08:50:56 +01:00
Rémi Verschelde e28cdc4654 doc: Update version string in XML 2018-01-13 11:43:42 +01:00
poke1024 75d69fb4ec Add shuffle() method to Array 2018-01-10 19:36:53 +01:00
Ralph Minderhoud 9ab59343f4 Added example for Array sort_custom function 2017-12-08 18:06:45 -06:00
Rémi Verschelde bc75fae579 doc: Update header version for 3.0-beta 2017-11-24 09:16:52 +01:00
Rémi Verschelde 15ada56d73 doc: Sync classref with current source 2017-11-24 09:16:27 +01:00
poke1024 d6e54de502 Add bsearch and bsearch_custom to Array 2017-11-21 08:50:31 +01:00
Rémi Verschelde 967bfb0c4a doc: Remove revision.module_config from version string
It is now "3.0-alpha" instead of "3.0.alpha.custom_build{,.mono}",
limits unnecessary diffs.
2017-11-15 20:41:16 +01:00
Rémi Verschelde 2fce0010f0 classref: Sync with current source
[ci skip]
2017-11-13 09:25:53 +01:00
Rémi Verschelde b1f2c31a36 doc: Sync classref with current source
Ensure that s/fixed_process/physics_process/ is handled properly.
[ci skip]
2017-10-11 23:55:04 +02:00
Andreas Haas 1d8a546a07 Merge pull request #11919 from Toizi/array_sort_ref
Array::sort/invert now return reference to Array
2017-10-10 20:31:48 +02:00
Marius Guggenmos 2f173a67ab Array::sort, sort_custom and invert now return reference to Array to allow chaining of operations 2017-10-09 16:36:09 +02:00
Jérôme GULLY 9e93f5b478 [DOCS] Review and improve 17 classes (#11890) 2017-10-09 12:49:12 +02:00
Rémi Verschelde 210ebb5cdb doc: Sync classref with current source
[ci skip]
2017-09-23 10:59:41 +02:00
letheed 5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00