Bind the String::humanize_size
method
The method signature is also changed to use `uint64_t` instead of `size_t` for it to be Variant-compatible.
This commit is contained in:
parent
3b2033b941
commit
a0d00c0e99
4 changed files with 18 additions and 2 deletions
|
@ -3298,7 +3298,7 @@ static int _humanize_digits(int p_num) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
String String::humanize_size(size_t p_size) {
|
String String::humanize_size(uint64_t p_size) {
|
||||||
|
|
||||||
uint64_t _div = 1;
|
uint64_t _div = 1;
|
||||||
Vector<String> prefixes;
|
Vector<String> prefixes;
|
||||||
|
|
|
@ -322,7 +322,7 @@ public:
|
||||||
String path_to_file(const String &p_path) const;
|
String path_to_file(const String &p_path) const;
|
||||||
String get_base_dir() const;
|
String get_base_dir() const;
|
||||||
String get_file() const;
|
String get_file() const;
|
||||||
static String humanize_size(size_t p_size);
|
static String humanize_size(uint64_t p_size);
|
||||||
String simplify_path() const;
|
String simplify_path() const;
|
||||||
|
|
||||||
String xml_escape(bool p_escape_quotes = false) const;
|
String xml_escape(bool p_escape_quotes = false) const;
|
||||||
|
|
|
@ -284,6 +284,7 @@ struct _VariantCall {
|
||||||
VCALL_LOCALMEM0R(String, sha1_buffer);
|
VCALL_LOCALMEM0R(String, sha1_buffer);
|
||||||
VCALL_LOCALMEM0R(String, sha256_buffer);
|
VCALL_LOCALMEM0R(String, sha256_buffer);
|
||||||
VCALL_LOCALMEM0R(String, empty);
|
VCALL_LOCALMEM0R(String, empty);
|
||||||
|
VCALL_LOCALMEM1R(String, humanize_size);
|
||||||
VCALL_LOCALMEM0R(String, is_abs_path);
|
VCALL_LOCALMEM0R(String, is_abs_path);
|
||||||
VCALL_LOCALMEM0R(String, is_rel_path);
|
VCALL_LOCALMEM0R(String, is_rel_path);
|
||||||
VCALL_LOCALMEM0R(String, get_base_dir);
|
VCALL_LOCALMEM0R(String, get_base_dir);
|
||||||
|
@ -1561,6 +1562,7 @@ void register_variant_methods() {
|
||||||
ADDFUNC0R(STRING, POOL_BYTE_ARRAY, String, sha1_buffer, varray());
|
ADDFUNC0R(STRING, POOL_BYTE_ARRAY, String, sha1_buffer, varray());
|
||||||
ADDFUNC0R(STRING, POOL_BYTE_ARRAY, String, sha256_buffer, varray());
|
ADDFUNC0R(STRING, POOL_BYTE_ARRAY, String, sha256_buffer, varray());
|
||||||
ADDFUNC0R(STRING, BOOL, String, empty, varray());
|
ADDFUNC0R(STRING, BOOL, String, empty, varray());
|
||||||
|
ADDFUNC1R(STRING, STRING, String, humanize_size, INT, "size", varray());
|
||||||
ADDFUNC0R(STRING, BOOL, String, is_abs_path, varray());
|
ADDFUNC0R(STRING, BOOL, String, is_abs_path, varray());
|
||||||
ADDFUNC0R(STRING, BOOL, String, is_rel_path, varray());
|
ADDFUNC0R(STRING, BOOL, String, is_rel_path, varray());
|
||||||
ADDFUNC0R(STRING, STRING, String, get_base_dir, varray());
|
ADDFUNC0R(STRING, STRING, String, get_base_dir, varray());
|
||||||
|
|
|
@ -437,6 +437,20 @@
|
||||||
[/codeblock]
|
[/codeblock]
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
|
<method name="humanize_size">
|
||||||
|
<return type="String">
|
||||||
|
</return>
|
||||||
|
<argument index="0" name="size" type="int">
|
||||||
|
</argument>
|
||||||
|
<description>
|
||||||
|
Converts [code]size[/code] represented as number of bytes to human-readable format using internationalized set of data size units, namely: B, KiB, MiB, GiB, TiB, PiB, EiB. Note that the next smallest unit is picked automatically to hold at most 1024 units.
|
||||||
|
[codeblock]
|
||||||
|
var bytes = 133790307
|
||||||
|
var size = String.humanize_size(bytes)
|
||||||
|
print(size) # prints "127.5 MiB"
|
||||||
|
[/codeblock]
|
||||||
|
</description>
|
||||||
|
</method>
|
||||||
<method name="insert">
|
<method name="insert">
|
||||||
<return type="String">
|
<return type="String">
|
||||||
</return>
|
</return>
|
||||||
|
|
Loading…
Reference in a new issue