Name
SPVM::Format - Format Utilities
Usage
use
Format;
# Foo 123 abc 1.115 Bar
my
$result
= Format->
sprintf
(
"Foo %d %s %.3f Bar"
, [(object)123,
"abc"
, 1.115]);
# %d - "123"
my
$result
= Format->
sprintf
(
"%d"
, [(object)123]);
# %5d - " 123"
my
$result
= Format->
sprintf
(
"%5d"
, [(object)123]);
# %05d - "00123"
my
$result
= Format->
sprintf
(
"%05d"
, [(object)123]);
# %+d - "+123"
my
$result
= Format->
sprintf
(
"%+d"
, [(object)123]);
# %-5d - "123 "
my
$result
= Format->
sprintf
(
"%-5d"
, [(object)123]);
# %d - "x"
my
$result
= Format->
sprintf
(
"%c"
, [(object)
'x'
]);
# %c - "あ"
my
$result
= Format->
sprintf
(
"%c"
, [(object)Fn->
ord
(
"あ"
)]);
# %s - "ABC"
my
$result
= Format->
sprintf
(
"%s"
, [(object)
"ABC"
]);
# %.2s - "AB"
my
$result
= Format->
sprintf
(
"%.2s"
, [(object)
"ABC"
]);
# %u - "4294967295"
my
$result
= Format->
sprintf
(
"%u"
, [(object)-1]);
# %f - "3.141500"
my
$result
= Format->
sprintf
(
"%f"
, [(object)3.1415]);
# %.2f - "3.14"
my
$result
= Format->
sprintf
(
"%.2f"
, [(object)3.1415]);
# %g - "3.14"
my
$result
= Format->
sprintf
(
"%g"
, [(object)3.14]);
# %x - "ff"
my
$result
= Format->
sprintf
(
"%x"
, [(object)255]);
# %x - "ffffffff"
my
$result
= Format->
sprintf
(
"%x"
, [(object)-1]);
# %p - "0x8000000000000000"
my
$result
= Format->
sprintf
(
"%p"
, [(object)
$object
]);
Description
Format
is a formatting utilities for sprintf
method.
Class Methods
sprintf
static method
sprintf
: string (
$format
: string,
$args
: object[]);
Creates a formatted string form the $format and the $args.
Specifiers
Specifiers | Descriptions | Acceptable Types |
---|---|---|
%c | An UTF-8 character | Byte, Int |
%d | Signed 32-bit integer | Int |
%f | 64bit floating point | Double, Float |
%g | 64bit floating point | Double, Float |
%x | Unsiged 32-bit integer represented by hexadecima characters 0-9a-z | Int |
%X | Unsiged 32-bit integer represented by hexadecima characters 0-9A-Z | Int |
%lX | Unsiged 64-bit integer represented by hexadecima characters 0-9A-Z | Long |
%ld | Signed 64bit integer | Long |
%lu | Unsigned 64bit integer | Long |
%lx | Unsiged 64-bit integer represented by hexadecima characters 0-9a-z | Long |
%s | String | String Type |
%p | Address | Object Type |
%u | Unsigned 32-bit integer | Int |
Specifier Options
Specifier options can be written between %
and the character of specifier such as d
, f
.
Specifier Options | Descriptions |
---|---|
0[DECIMAL_NUMBERS] | Zero padding |
+ | Adding a plus sign |
- | Left justified |
.[DECIMAL_NUMBERS] | Precision(Maximam width in %s) |
Copyright & License
Copyright (c) 2023 Yuki Kimoto
MIT License